我需要将 Jar 文件的内容动态提取到本地目录。应用程序的其余部分将使用这些内容。在我的 eclipse 开发环境中一切运行良好。然而,在 JNLP 启动时,以下代码和平返回 null。
InputStream stream = VLCLibManager.class.getClass().getClassLoader().getSystemResourceAsStream("XXX.jar");
我已经做了以下操作:
- 包含使用正确的类路径条目更新的 VLCLibManager.class 的 JAR list 文件
- 我的XXX.jar放在JNLP的/lib目录下。已正确下载
- 在 XYZ.jnlp 文件中包含条目 (jar href="lib/XXX.jar"/>>)
感谢任何帮助,因为过去几天我一直被这个问题困扰。
最佳答案
终于解决了这个问题。考虑在这里发布,因为它可以帮助其他面临类似问题的人。
我做了以下:
我将所需的资源打包为 Zip 文件,并将其放入我的 Maven 项目的/resources 目录中
Maven 编译器插件将此 zip 文件与生成的 jar 一起打包。
所以我可以使用将 zip 文件加载到我的 java 代码中
YourClass.class.getResourceAsStream("/XXXX.zip")
这会将资源加载到java程序中。您可以根据需要解压并在需要的地方使用它
关于java - JNLP Webstart 启动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16794711/