为什么-cp与-jar选项一起使用时不起作用?

时间:2020-10-15 13:27:31

标签: java jar classpath

我使用java -cp dependencyJarPath -jar MyJar.jar启动我的应用程序。但是它在我的dependencyJar中找不到该类,并给了我java.lang.NoClassDefFoundError。然后,我在代码中打印类路径,并发现dependencyJarPath不在我的类路径上。然后,在jar的MANIFEST.MF的Class-Path标头中添加dependencyJarPath,并使用java -jar MyJar.jar启动我的应用程序,

所以我的问题是,使用-cp-jar时,-cp会生效吗?如果没有生效,除了设置Class-Path标头外,我如何在运行jar时设置类路径?

1 个答案:

答案 0 :(得分:1)

据此: http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html

“使用此选项时,JAR文件是所有用户类的源,而其他用户类路径设置将被忽略。”

如果您不介意在启动应用程序时指定启动类,则可以将jar添加到类路径并像这样启动它。

java -cp dependencyPath;MyJar.jar My.StartUpClass
相关问题