从Java Web Start中的jar加载资源

时间:2014-11-21 13:20:23

标签: java jar resources java-web-start embedded-resource

我正在尝试在Java Web Start(JWS)应用程序中加载许多资源。

我尝试使用以下方式加载图片:

private Image fetchImage(String path, String refname) {
    // check to see if the reference already exists else load it.
    if (images.containsKey(refname)) {
        return images.get(refname);
    } else {
        try {
          //return ImageIO.read(ClassLoader.getSystemResourceAsStream(path));
            return ImageIO.read(ClassLoader.getSystemResource(path));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return null;
}

但是我得到一个IllegalArgumentException:input == null!在fetchImage

我一直在阅读topic

并尝试过在我的maven-jar-plugin pom.xml中添加classpath的解决方案

在此page我读了以下内容:

  

Java目前还不支持列出a中所有资源的方法   罐。您一次只能检索一个资源。

我正试图一次加载所有资源。那么他们是否已经在JWS中解决了这个问题,或者我是否必须删除每个资源并在每次需要时重新加载它?

我的jar资源是root,例如

我的路径是:

this.fetchImage("images/image1.png", "image1");

0 个答案:

没有答案