【Java编程】Java在dos窗口编译与执行的批处理
最近在Java编程过程中,常用到dos窗口对程序进行编译与运行。但是不方便之处在于每次都要输入命令进入将要编译的程序的目录(其实也有简单的方法,在文章末尾给出)。于是编写了一个配置文件,可以一次修改,经常使用。(只需要在下面程序中将路径修改为你所经常存放程序的目录)。前提当然是你已正确配置环境变量。具体方法为:将下面的程序放在新建的文本文件中,并将后缀名改为.bat.然后双击该文件,按提示操作即可!程序源码如下:(红色字体是需要根据你的存放路径修改的)
echo off cls title Java在dos窗口的编译与执行 color 0a rem 将路径改为你将要编译执行的文件目录 例如:我的文件目录为"D:\studytool\Java\classes"(shift+右键 单击你的文件目录选择"复制为路径") D: cd D:\ cd studytool\Java\classes set cd1=%cd% echo 当前目录%cd1%下已有的文件: dir /b :cx set /p filename=请选择要编译或执行的文件名(需写后缀名,按quit退出程序): if "%filename%"=="quit" (exit) set "leixing=%filename:~-5%" set "leixing1=%filename:~0,-5%" set "leixing2=%filename:~0,-6%" if "%leixing%"==".java" ( echo 请选择:(1.编译;2.执行;3.编译和执行) choice /c 123 if errorlevel 3 ( echo 正在编译…… javac %filename% echo 正在执行…… echo 执行结果为: java %leixing1% goto cx ) if errorlevel 2 ( echo 该文件为.java文件,不能直接执行! goto cx ) if errorlevel 1 ( echo 正在编译…… javac %filename% goto cx ) echo 此时目录%cd1%下已有的文件: dir /b goto cx ) if "%leixing%"=="class" ( echo 请选择:(1.编译;2.执行;3.编译和执行) choice /c 123 if errorlevel 3 ( echo 该文件为.class文件,不能编译! goto cx ) if errorlevel 2 ( echo 正在执行…… echo 执行结果为: java %leixing2% goto cx ) if errorlevel 1 ( echo 该文件为.class文件,不能编译! goto cx ) echo 此时目录%cd1%下已有的文件: dir /b goto cx ) else (echo 你输入的文件名有误! goto cx) pause
2.执行.class文件
3.处理异常和退出
虽然上述方法比较人性化,但是也有不足之处:不能运行Java小程序。现在有一种更简单的方法能避免在dos窗口下进入程序所在目录的繁琐过程:将cmd.exe文件拷贝到程序的目录下即可。
原文:http://blog.csdn.net/tengweitw/article/details/32967117
作者:nineheadedbird
【Java编程】Java在dos窗口编译与执行的批处理的更多相关文章
- 【Java编程】Java在dos窗体编译与运行的批处理
近期在Java编程过程中,常常使用到dos窗体对程序进行编译与执行. 可是不方便之处在于每次都要输入命令进入将要编译的程序的文件夹(事实上也有简单的方法,在文章末尾给出).于是编写了一个配置文件,能够 ...
- Windows学习总结(8)——DOS窗口查看历史执行过的命令的三种方式
在DOS窗口执行了一些列命令完成某项工作后,如果要查看都执行了那些命令,该如何办呢?(前提:DOS窗口未关闭的情况下) 一.方法一: 使用↑↓箭头上下翻看执行过的命令,此方式适宜执行命令较少的情况. ...
- 在dos中编译java文件
首先Dos中 编译java文件是:javac (所有)类名.java 运行java文件是:java 包名.类名 java指令默认在寻找class文件的地址是通过CLASSPATH环境变量中指定的目录中 ...
- 开始JAVA编程的敲门砖——JAVA开发环境搭建
从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...
- Java学习:注解,反射,动态编译
狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! Java学习:注解,反射,动态编译 Annotation 注解 什么是注解 ? Annotat ...
- JAVA基础语法:java编程规范和常用数据类型(转载)
JAVA基础语法:java编程规范和常用数据类型 摘要 本文主要介绍了最基本的java程序规则,和常用数据类型,其中侧重说了数组的一些操作. 面向java编程 java是纯面向对象语言,所有的程序都要 ...
- DOS窗口带jar包运行java程序
由于工作环境的问题,有过一次这样的测试,需要在DOS窗口运行带有jar包的java程序 编译命令如下: javac -Djava.ext.dirs=./lib Test.java 或 javac -D ...
- 编译运行第一个Java程序——通过示例学习Java编程3
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=13 在本教程中,我们将了解如何编写.编译和运行Ja ...
- 在CMD窗口中使用javac和java命令进行编译和执行带有包名的具有继承关系的类
一.背景 最近在使用记事本编写带有包名并且有继承关系的java代码并运行时发现出现了很多错误,经过努力一一被解决,今天我们来看一下会遇见哪些问题,并给出解决办法. 二.测试过程 1.父类代码 pack ...
随机推荐
- Hibernate之实体关系映射
延迟加载与即时加载 例如Person类和Email类是一对多关系,如果设为即时加载,当加载Person时,会自动加载Email,如果设置为延迟加载,当第一次调用person.getEmails()时才 ...
- Android学习路线指南
看到这位大牛的博文,不禁得感概,我最近也遇到了很多问题,内心彷徨不堪,转载大牛这篇博文,是为了更好的勉励自己.原文地址在最后面. 前言 看到一篇文章中提到"最近几年国内的初级Android程 ...
- RPCZ中的智能指针单例
RPCZ中的智能指针单例 (金庆的专栏) 智能指针单例应用于 RPCZ 库以实现库的自动初始化与自动清理. RPCZ: RPC implementation for Protocol Buffers ...
- (九十七)集成JPush实现远程通知和推送的发送
上节介绍了通过直接和APNS交互实现推送的方法,较为繁琐,最为重要的是发送推送需要特定的服务端,通过JPush,不仅可以简化客户端的接收,还可以通过控制台或者API实现通知的发送. 首先注册JPush ...
- SpringMVC系列之(二) springMVC和Struts异同
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring ...
- Cocos2D iOS之旅:如何写一个敲地鼠游戏(十):创建游戏逻辑
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- Android列表视图ListView和ListActivity-android学习之旅(二十四)
ListView简介 ListView是android中常用的一种控件,创建ListView有两种方式: 1.在xml中使用ListView控件创建. 2.使用activity继承ListActivi ...
- DB2数据库代码页和实例代码页的区别(解决DB2乱码问题)
DB2CODEPAGE: DB2 实例级别的代码页设置,它会影响DB2相关应用程序对代码页转换时做出代码页判定. 可以通过 db2set DB2CODEPAEG= 命令将 DB2COD ...
- Spring事务管理与数据库隔离级别的关系(Spring+mysql)
之前写过一篇文章<数据库隔离级别(mysql+Spring)与性能分析 >,里面很多问题写的不是很专业,也不是很有逻辑性,现在重新整理一下,希望对大家有帮助. 这部分通过两天时间反复的 ...
- 【unix网络编程第三版】ubuntu端口占用问题
<unix网络编程>一书中的代码并不是能直接运行,有时候需要结合各方面的知识来解决,大家在这本书的时候,一定要把代码都跑通,不难你会错过很多学习的机会! 1.问题描述 本人在阅读<U ...