为什么我的类路径只能在末尾使用冒号?

时间:2013-02-20 11:58:37

标签: java log4j classpath

我的应用程序只开始登录到log4j,如果我把一个:放在类路径的末尾。我已经在类路径中有属性文件和jar,所以我不确定发生了什么。甚至用冒号结束类路径是什么?启动命令因此变成这样:

java -cp path-to-log4j.properties:bunch:of:other:stuff: app

如果我取消最后一个冒号,它就会停止记录,就好像它找不到log4j一样。我的问题是,最后一个冒号实际上做了什么,就像它添加到类路径的目录一样?

2 个答案:

答案 0 :(得分:1)

通常你应该把类路径放在引号-cp“path:path2”。

编辑:冒号可能会添加当前目录。

EDIT2:无法将文件(jar文件除外)直接添加到类路径中。只有目录。今天读了^^

答案 1 :(得分:0)

对类似情况感到惊讶:

不工作:

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)