假设我刚刚创建了一个包“example”并且里面有两个类,“Main”和“Helper”。
使用最简单的编译(例如,$ javac Main.java Helper.java),只要我在包含示例包的目录中,通过在命令行中键入它,我就能够正常运行: / p>
$java example.Main
问题:
为什么我要设置CLASSPATH,因为我已经可以运行该程序了?我猜是能够在我的机器上的任何目录中键入“$ java example.Main”,但我不确定。
在命令行中输入“java -cp / path / to / your / java / class / file Main”会发生什么?现在我想象的是包含所有不同类路径的文件,该命令只会添加另一个类路径。是这样的吗?
在命令中使用“CLASSPATH = / path / to / your / java / class / file”和“java -cp / path / to / your / java / class / file Main”之间是否有区别线?为什么第二个人最后会有班级的名字(即主要的)?
答案 0 :(得分:1)
java
变量PATH
的路径
CLASSPATH
CLASSPATH
通常会更方便,因为您倾向于设置CLASSPATH
一次。从那时起,java Main
足以执行主类。使用java -cp /path/to/your/java/class/file Main
时,您必须每次都输入-cp /path/to/your/java/class/file
。话虽这么说,CLASSPATH
和-cp
或-classpath
选项通常都包含指向包含程序使用的java库的目录的条目,而不是程序本身的目录。