批处理文件来执行java程序

时间:2011-11-10 16:14:43

标签: java windows batch-file

我在文件夹中有多个.java文件(例如temp / code / project) 我想要一个批处理文件来编译和运行这些java文件。 批处理文件应该在java文件所在的同一结构中创建类文件,从classes文件夹开始(即classes / temp / code / project)

我不知道如何编写批处理文件。任何人都可以帮助我吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

理论上你应该写下以下内容:

@echo off
::compile classes
javac -cp YOUR_CLASSPATH com/yourcompany/YourClass1.java
javac -cp YOUR_CLASSPATH com/yourcompany/YourClass2.java
javac -cp YOUR_CLASSPATH com/yourcompany/YourClass3.java
javac -cp YOUR_CLASSPATH com/yourcompany/YourClassLauncher.java
:: create jar
jar cvfM Manifest.txt myjar.jar *.class
echo.
echo Hit any key to launch project.
pause
java -jar myjar.jar
pause

如果你有一个依赖于项目中所有其他类的类,那么仅使用这个类运行javac就足够了:编译器将编译所有类。

# Manifest.txt
Manifest-Version: 1.0
Class-Path: .;MyUtils.jar
Created-By: 1.6.0
Main-Class: com.yourcompany.YourClassLauncher

这只是一个例子,也是一个很好的练习。在现实生活中,人们使用特殊的构建工具,如好的旧Ant,Maven或更新的Graidle或Buildr。我建议你带上其中一个。

答案 1 :(得分:0)

的内容
cd C:\temp\code\project
javac -classpath . -d C:\classes\temp\code\project\ *.java

您可能不需要包含-classpath标记(我总是这样做,我不必担心维护我的CLASSPATH变量。-d标记指定放置生成的类文件的特定目录。