如果我将 : 放在类路径的末尾,我的应用程序只会开始记录到 log4j。我已经在类路径中有属性文件和 jar,所以我不确定发生了什么。用冒号结束类路径有什么作用?启动命令因此变成这样:
java -cp path-to-log4j.properties:bunch:of:other:stuff: app
如果我去掉最后一个冒号,它就会停止记录,就好像它找不到 log4j。我的问题是,最后一个冒号实际上在做什么,就像它添加到类路径中的哪个目录一样?
通常你应该把类路径放在引号中 -cp "path:path2"。
编辑:冒号可能会添加当前目录。
EDIT2:不能将文件(jar 文件除外)直接添加到类路径中。只有目录。今天读完^^
对类似情况感到惊讶:
不工作:
java -classpath swt.jar org.ivan.swt.SWTHelloWorld
在职的:
java -classpath swt.jar: org.ivan.swt.SWTHelloWorld
也在工作:
java -classpath :swt.jar org.ivan.swt.SWTHelloWorld
(注意 swt.jar 开头和结尾的冒号)
Linux 上的 Java(TM) SE 运行时环境(内部版本 1.8.0_51-b16)