带有图像文件的Java项目

时间:2017-01-15 21:56:46

标签: java image packages directory getresource

我正在开发一个使用图像文件的项目。使用图像存储文件夹的正确位置在哪里?在src文件夹里面(由netbeans创建)还是在外面?此外,当我清理并构建项目时,会创建一个包含jar文件的dist文件夹。图像文件夹是否可以包含在jar中,或者如果我想在另一台计算机上运行程序,我必须将它们复制到jar的同一文件夹中?最后,当我想从源代码中引用图像文件夹时,我想知道如何使用getResource。提前谢谢。

1 个答案:

答案 0 :(得分:2)

  

将图像存储在文件夹中的正确位置在哪里?在src文件夹里面(由netbeans创建)或在外面?

答案是,这取决于。如果您希望捆绑在Jar(AKA嵌入式资源)中的图像,则它们应存储在Netbeans src目录中。如果您希望它们存储在外部(然后您将负责确保它们在部署时包含在Jar中),那么它们应存储在src目录之外。

  

如果我想在另一台计算机上运行该程序,那么可以将图像文件夹包含在jar中,或者我必须将它们与jar一起复制到同一个文件夹中吗?

如果图像存储在src目录中,它们会自动包含在内,如果它们存储在外部,则需要提供一些自定义的ant代码来执行所需的操作。

同样,如果它们存储在外部(到src目录),您将对其管理负全部责任

  

最后,当我想从源代码中引用图像文件夹时,我想知道如何使用getResource。

BufferedImage img = ImageIO.read(getClass().getResource("{path to images}/{image name}");

有许多资源/示例可以扩展在不同场景中如何使用getResource的个别要求/差异,但这是基本想法