更改资源文件夹?

时间:2013-12-19 16:06:01

标签: java eclipse image directory jframe

Java默认查找项目中的文件,例如。我创建了一个名为calculator的项目,想要一个背景图像,我会将所需的图像放在项目文件夹中。我想通过改变Java寻找图像的位置来更加整洁。

我创建了一个名为res的文件夹,并将其添加到构建路径中,但如果我将图像放入此res文件夹,则无法找到它。例如:

launcher.setIconImage(new ImageIcon("Logo.png").getImage());  

如果我将Logo.png放在res文件夹中,它就不会改变IconImage,如果我将它放在项目文件夹中。当我说项目文件夹时,我指的是当你创建一个新的Java项目时eclipse创建的文件夹。

2 个答案:

答案 0 :(得分:2)

像@lwi说的那样,你应该将文件夹名称添加到资源的路径: “res / Logo.png”而不是“Logo.png”。

如果您希望在导出程序时将图片包含在JAR中,建议您查看此question

确保将图片放在源文件夹的子文件夹中(如this answer中所述)。

答案 1 :(得分:1)

“项目文件夹”只是程序启动的文件夹。因此,当您从eclipse运行程序时,它会在项目的根目录中查找文件“Logo.png”。

另一方面,如果你导出程序并在另一个文件夹中运行它,这个文件夹就是程序的根文件夹,那里将搜索PNG。

如果你想要你的文件在res文件夹中,你必须相应地引用PNG,所以你必须写:

launcher.setIconImage(new ImageIcon("res/Logo.png").getImage());  

如果你想让它更通用,你应该使用某种配置机制,为你提供正确的图像路径。因此,当您想要更改foldername时,您只需要更改一个位置。