我正在编写一个 Java 应用程序,需要访问通过 JNLP 运行的 .jar 文件中的多个资源。
虽然该应用程序在我的开发环境(Eclipse)中工作正常,但在通过 JNLP 执行时却无法工作,显然是因为它在 jar 中找不到资源文件。我检查了资源文件,资源肯定在那里。
我目前使用的代码如下:
someclass.getResourceAsStream("/resources/somefile.png");
访问 .jar 中可与 JNLP 配合使用的资源文件的正确方法是什么?
最佳答案
使用:this.getClass().getClassLoader().getResourceAsStream(name)
示例: myClass.getClass().getClassLoader().getResourceAsStream("resources/somefile.png")
两个提示:
1 - 使用 jar 文件中您自己的类。如果使用另一个类 - 例如对象 - 失败
2 - 名称,即资源必须不带前导“/”
关于java - 在 Java/JNLP 中加载资源的可靠方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3292114/