【Java编程】Java在dos窗口编译与执行的批处理

简介:        最近在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

我的运行截图如下:
1.编译.java文件

2.执行.class文件


3.处理异常和退出


       虽然上述方法比较人性化,但是也有不足之处:不能运行Java小程序。现在有一种更简单的方法能避免在dos窗口下进入程序所在目录的繁琐过程:将cmd.exe文件拷贝到程序的目录下即可。


原文:http://blog.csdn.net/tengweitw/article/details/32967117

作者:nineheadedbird


目录
相关文章
|
3月前
|
Java Linux
java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类
本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。
76 2
|
2月前
|
运维
【运维基础知识】用dos批处理批量替换文件中的某个字符串(本地单元测试通过,部分功能有待优化,欢迎指正)
该脚本用于将C盘test目录下所有以t开头的txt文件中的字符串“123”批量替换为“abc”。通过创建批处理文件并运行,可实现自动化文本替换,适合初学者学习批处理脚本的基础操作与逻辑控制。
172 56
|
27天前
|
Windows
DOS 批处理 setlocal命令、endlocal命令详解
DOS 批处理 setlocal命令、endlocal命令详解
41 10
|
1月前
|
Windows
DOS 批处理 setlocal命令、endlocal命令详解
setlocal这是一个命令,它开始局部化环境更改,通常在批处理文件中使用,以确保在脚本中所做的任何环境更改(例如设置或修改环境变量)不会影响到调用此批处理的上下文或其他批处理文件
62 14
|
1月前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
45 4
|
2月前
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
36 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
2月前
|
Java Windows
JAVA 常用的 DOS 命令
【10月更文挑战第15天】DOS 命令是 Java 开发中不可或缺的工具,掌握这些命令可以提高开发效率和操作便利性。
42 3
|
2月前
|
IDE Java 编译器
Java:如何确定编译和运行时类路径是否一致
类路径(Classpath)是JVM用于查找类文件的路径列表,对编译和运行Java程序至关重要。编译时通过`javac -classpath`指定,运行时通过`java -classpath`指定。IDE如Eclipse和IntelliJ IDEA也提供界面管理类路径。确保编译和运行时类路径一致,特别是外部库和项目内部类的路径设置。
167 5
|
2月前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
57 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
3月前
|
IDE Java 编译器
lombok编译遇到“找不到符号的问题”
【9月更文挑战第18天】当使用 Lombok 遇到 “找不到符号” 的问题时,可能是由于 Lombok 未正确安装、编译器不支持、IDE 配置不当或项目构建工具配置错误。解决方法包括确认 Lombok 安装、编译器支持,配置 IDE 和检查构建工具配置。通过这些步骤通常可解决问题,若问题仍存在,建议检查项目配置和依赖,或查看日志获取更多信息。
1257 2