【发布时间】:2014-05-09 11:29:13
【问题描述】:
我正在试验javac 命令行选项,以了解-sourcepath 和-classpath 选项。当我运行javac 并尝试了四种不同的命令行选项时,我无法获得重新编译的.class 文件。
这是我的文件夹结构。请注意,由于测试,Test.java 文件位于“bat”文件夹内,这是一个公认的奇怪位置。
projects \ prj1 \ bat \ bat.bat
Test.java
Test.class <--- unable to obtain recompiled file.
src \ Main.java
Main.class
我的两个.java测试文件的内容是:
// Main.java, located in the src folder
class Main {
public static void main(String[] args) {
new Test();
}
}
// Test.java, located in the bat folder
class Test {}
关于在命令提示符下执行javac,这里有四个我尝试过的选项。我从一个名为 bat.bat 的批处理文件中运行了这些命令,该文件位于“bat”文件夹中。
javac ..\src\Main.java (no sourcepath, no cp)
javac -sourcepath . ..\src\Main.java (sourcepath)
javac -cp . ..\src\Main.java (cp)
javac -sourcepath . -cp . ..\src\Main.java (sourcepath, cp)
在上述所有javac 命令中,我无法为 Test.java 文件获取重新编译的 .class 文件。这是因为我没有编辑 Test.java 文件,因为最初编译它?请注意,我没有设置 CLASSPATH 环境变量。谢谢。
【问题讨论】:
-
我使用 IDE,它可以确保我的代码根据需要重新编译,而无需我保存文件。只需键入代码并运行它。