[英]Unable to get javac to automatically recompile a source file
我正在尝试使用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
环境变量。 谢谢。
如果类文件已存在于目标/输出文件夹中,则javac
将仅重新编译源java文件(如果已从类文件的日期/时间开始修改)。
如果要重新编译源文件,请先调用* .class文件,然后再调用javac
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.