从罐子里面访问罐子外面的图像

时间:2015-08-05 18:13:51

标签: java file jar path

我尝试寻找类似的答案,但我仍然面临一些困难。我正试图从jar中访问.gif文件。我的文件结构是:

src
  |-> main
         |->webapp
                  |->images
                          |-> bulb.gif
                  |->signed.jar

如果我使用绝对文件路径,那么我可以通过使用return (new ImageIcon(path, description)).getImage();来获取我的图像,但我只是想使用相对路径。我尝试使用return (new ImageIcon(getClass().getResource("/images/bulb.gif"))).getImage();,但这不起作用。我在后一种方法中使用正确的途径,还是有更好的选择?

编辑:我也在下面尝试过但没有成功。

 InputStream image = getClass().getClassLoader().getResourceAsStream("images/bulb.gif");
            Image in = null;
            try {
                in = ImageIO.read(image); 
            }
            catch(Exception e){ 
            }

            return (new ImageIcon(in, description)).getImage();

我的文件结构与问题是

有关
project/src/main/java/web/load/jar/something.java
project/src/main/java/web/load/jar/images/bulb.gif
project/build.xml
project/target/thing.signed.jar

我的罐子和

mainproject/src/main/app/thing.signed.jar
mainproject/src/main/app/images/bulb.gif

用于我的主要webapp。我试图从我的signed.jar访问bulb.gif,但将它放在我的signed.jar中可能会更容易。

0 个答案:

没有答案