我在课程加载方面遇到了一些小问题。我有一个jar说abc.jar,在那个jar下面还有另一个叫做libs / cde.jar的jar。我在那个使用cde.jar的jar中编写了一个类。我打包了abc.jar,并检查了依赖jar是否正确打包在/libs/cde.jar下。
但是,当我尝试加载jar(abc.jar)并执行依赖于cde.jar的类时,它找不到依赖的cde.jar。关于我怎么做的任何指针?我不能使用像OneJar等其他jar加载器。如果可能的话,我必须使用纯java类加载。我尝试使用" file://// C:/abc.jar!/libs/cde.jar"将它放在类路径中。没有任何成功
由于 Masti
答案 0 :(得分:4)
默认情况下,Java不能处理嵌入式Jars(即Jars中的Jars)
如果你真的想要这种行为,你应该看看OneJar
否则,您需要在外部保留依赖Jars,并通过其Class-Path
文件中的父Jar Manifest
属性指定依赖关系