最近在Java编程过程中,常用到dos窗口对程序进行编译与运行。但是不方便之处在于每次都要输入命令进入将要编译的程序的目录(其实也有简单的方法,在文章末尾给出)。于是编写了一个配置文件,可以一次修改,经常使用。(只需要在下面程序中将路径修改为你所经常存放程序的目录)。前提当然是你已正确配置环境变量。具体方法为:将下面的程序放在新建的文本文件中,并将后缀名改为.bat.然后双击该文件,按提示操作即可!
程序源码如下:(红色字体是需要根据你的存放路径修改的)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
| 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
|
我的运行截图如下:
- 编译.java文件
执行.class文件
处理异常和退出
虽然上述方法比较人性化,但是也有不足之处:不能运行Java小程序。现在有一种更简单的方法能避免在dos窗口下进入程序所在目录的繁琐过程:将cmd.exe文件拷贝到程序的目录下即可。