java -cp“*”是什么意思?

时间:2014-06-05 08:40:10

标签: java stanford-nlp

我正在研究Windows上的斯坦福情绪分类器。我想重新训练我自己的模型,这里是如何在网站上指定的:

java -mx8g edu.stanford.nlp.sentiment.SentimentTraining -numHid 25 -trainPath train.txt -devPath dev.txt -train -model model.ser.gz

但这给了我错误:

  

无法找到或加载主类

但是将它更改为java -cp "*"它确实有效。

3 个答案:

答案 0 :(得分:1)

  

类路径条目可以包含基本名称通配符,   这被认为等同于指定所有文件的列表   在扩展名为.jar或.JAR的目录中。例如,   类路径条目foo / 指定名为的目录中的所有JAR文件   FOO。简单地由*组成的类路径条目扩展为列表   当前目录中的所有jar文件。

来自Oracle Docs

答案 1 :(得分:0)

-cp<目录和zip / jar文件的类搜索路径>

在当前目录中搜索给定类文件的所有jar和zip文件

答案 2 :(得分:0)

cp标志指定类路径,即该程序要考虑的其他档案。

通常,你给它一个以冒号分隔的jar文件列表,但是这个特殊的例子是根据文档的特殊情况:

  

如果未使用-classpath和-cp且未设置CLASSPATH,则用户类路径由当前目录(。)组成。为方便起见,包含基本名称*的类路径元素被视为等效于指定目录中扩展名为.jar或.JAR 的所有文件的列表。 Java程序无法区分两次调用。

请注意,引号是必要的,因为shell会将其扩展到目录中的所有文件,而不仅仅是jar文件。