默认类路径java

时间:2012-11-14 21:11:41

标签: java classpath

我的程序位于C:\ Users \ Programs \ x.java

X.java正在使用y.jar,z.jar。

中的一些文件

y.jar和z.jar位于C:\ Users \ Programs文件夹中。

(1) C:用户\程序> javac x.java

(2) C:用户\程序> javac -classpath y.jar:z.jar x.java

当我这样做时,我没有收到任何错误(2)但是当我这样做时(1)我收到错误。是不是该类路径设置为当前文件夹。如果是这样,为什么它没有看到y.jar和z.jar。

3 个答案:

答案 0 :(得分:2)

驻留在类路径上的jar的内容不会自动添加到类路径本身。您案例中的正确类路径将是您在案例(2)中指定的。

答案 1 :(得分:1)

类路径包含当前文件夹 但是,它不包括当前文件夹的子文件夹。

如果您尝试使用com.example.MyClass,Java将在类路径中的每个文件夹中查找名为com/example/MyClass.class 的文件
它不会查找类路径中文件夹内的子文件夹或JAR。

答案 2 :(得分:0)

是的,默认情况下,classpath确实应该设置为当前文件夹。但是,将其设置为给定文件夹与将其设置为特定JAR文件不同。