gpt4 book ai didi

java - 使用 -cp 或 -classpath 手动设置 CLASSPATH 无法按预期工作

转载 作者:行者123 更新时间:2023-12-03 01:21:43 27 4
gpt4 key购买 nike

MyClassWithMainMethod.java 使用 someJar.jar 的类。

如果我打电话:

java -cp someJar.jar MyClassWithMainMethod

我得到了异常(exception):

Exception in thread "main" java.lang.NoClassDefFoundError: MyClassWithMainMethod
Caused by: java.lang.ClassNotFoundException: MyClassWithMainMethod
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)

但是当我手动将 CLASSPATH 设置为我的 jar 时

export CLASSPATH=:/path/to/someJar.jar

可以调用

java MyClassWithMainMethod

我做错了什么?

最佳答案

怎么样

java -cp /path/to/someJar.jar MyClassWithMainMethod

如果您不向 Java 提供 jar 文件的完整路径,您如何期望它能够找到它?

好吧,你给“-cp”的参数与你在 CLASSPATH 变量中使用的参数是一样的 - 当你这样做时会发生什么:

java -cp .:someJar.jar MyClassWithMainMethod

关于java - 使用 -cp 或 -classpath 手动设置 CLASSPATH 无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2387760/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com