java 子jar如何访问父Jar类路径上的资源?

mspsb9vt  于 11个月前  发布在  Java
关注(0)|答案(1)|浏览(101)

我有一个parent jar。这个parent jar在它的classpath上有一个资源。这个parent jar有一些第三方依赖jar嵌入其中(子jar)。子jar有一些java代码,试图使用路径访问文件

new File(pathToParentResourceFile)

字符串
这给出了一个文件未找到异常。该文件在父jar中是可访问的。如果我将此文件路径传递给子jar,则它似乎不可访问。
注意-我不能编辑子程序的代码,因为它是第三方库。
我的jar是一个osgi包。我可以通过多种方式访问父Jar中的资源。一旦我获得资源,我也会获得路径。但是当子jar使用此路径时,则找不到文件。

nzkunb0c

nzkunb0c1#

在将资源传递给子jar之前,您应该尝试解析父jar中的资源,例如URL

import java.net.URL;

URL urlToFile = this.getClass().getResource("path/to/file");
ChildJar childJar.methodThatRequiresParentResource(urlToFile);

字符串

相关问题