.jar文件中的res /文件夹 - MANIFEST.MF

时间:2015-01-26 20:46:28

标签: java jar manifest manifest.mf

所以,在我的代码中,我让应用程序从名为res /的文件夹中获取资源,并在Manifest.mf文件中将“Class-Path”设置为res /但它不读取res /文件夹中的文件在jar中,它从jar文件所在的文件夹中读取res /文件夹。 (抱歉解释不好) 示例:如果我的jar位于名为“Game”的文件夹中,则res文件夹必须位于“Game”内才能工作。 我的问题是:如何让它从罐子里读取res /?

我将ImageIcons设置为:

ImageIcon icon = new ImageIcon("res/image.png");

1 个答案:

答案 0 :(得分:1)

阅读javadoc。您正在使用的构造函数如下所示:

  

public ImageIcon(String filename)

     

从指定文件创建ImageIcon。

因此它根本不使用类路径。它只是从当前目录中查找文件res / image.png。

jar中的所有内容都可以通过类加载器访问,因为jar位于类路径中。您不需要任何清单输入。但是您需要使用类加载器加载图像资源:

ImageIcon icon = new ImageIcon(MyClass.class.getResource("/res/image.png"));