如果我有
CLASSPATH=/blah;/foo然后运行
java -cp bar.jar com.yourcompany.SomeMain现在是类路径了。
bar.jar还是因为
/blah;/foo;bar.jar基本上,命令行开关是否覆盖或增强现有的CLASSPATH
发布于 2013-03-25 09:53:12
看起来-cp选项覆盖了CLASSPATH环境变量。
$ export CLASSPATH=Tests
$ java Printf
Team Name No. of Wins No. of Losses
Bobcats 0 0
Tigers 1 1
Lions 2 2
Cheetahs 3 3
Jackals 4 4
Leopards 5 5
Snow Leopards 6 6
Cougars 7 7
Mountain Lions 8 8
Bobcats 9 9
$ java -cp . Printf
Error: Could not find or load main class PrintfCLASSPATH环境变量仍然设置为文件夹测试,但是,当我使用-cp选项时,它会覆盖它,并将类路径更改为.,即当前目录,因此无法再找到我的类文件。
发布于 2013-03-25 09:49:42
是!,cp或classpath选项将替代系统变量。了解更多信息
http://docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/java.html
发布于 2013-03-25 10:16:15
-cp命令行开关将覆盖。实际上,还有一些其他设置会覆盖CLASSPATH环境变量,比如-jar开关或特定于集成开发环境的类路径设置。
在任何情况下,如果您希望快速查看在运行代码时引用了哪些类路径,可以考虑在类中显示此行。
System.getProperty("java.class.path");https://stackoverflow.com/questions/15606395
复制相似问题