java list 类路径与-classpath

标签 java jar classpath

我正在尝试找出一个关于可执行 jar 文件的奇怪问题: xyz.jar 在 list 文件中有一个类路径/并且依赖于 abc.jar 库。

不幸的是,xyz.jar 中的 list 类路径不正确。为了避免灾难,我正在更新执行命令以使用:java -classpath path/abc.jar:etc 而不是 java -jar

问题是 xyz.jar 会出现故障,除非 abc.jar 不在类路径中。删除 abc.jar 后,程序会正确执行,并且不会抛出任何异常。 为什么? xyz.jar 必须从其他地方获取 abc.jar。 xyz.jar 调用 abc.jar 中的方法。

-classpath 应该覆盖任何 $CLASSPATH 设置。即使在使用 -classpath 时,java 是否仍会查看 list 类路径?

最佳答案

如果指定 -jar,则仅使用 list 中的类路径。所有其他的都被忽略。如果需要重新指定类路径,请不要使用 -jar。

关于java list 类路径与-classpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10233490/

相关文章:

java - 如何使用 Ant 创建捆绑的可运行 jar

java - 为什么会出现错误: Could not find or load main class SearchResults occur?

java - 如何找出某个类属于哪个 JAR 文件?

java - Java 中的浮点转换

java - 如何从 Django 模板加载 Java 小程序

java - 未找到 ClassPathXmlApplicationContext 类路径

java - tomcat 7上的 war 部署问题

java - 按对象的给定构造函数值对对象的 ArrayList 进行排序

java - 获得焦点时选择(突出显示)jdatechooser 的文本

java - 从 jar 动态加载文件