【发布时间】:2013-06-09 18:10:37
【问题描述】:
我在eclipse的java项目中有这样的结构:
- src/com/myprogram/.../foo.java
- res/icon.png
- .project
- ...
我知道您可以使用
从 jar 中加载图像ImageIO.read(getClass().getResource("/res/icon.png"));
当您尝试使用 eclipse 直接运行应用程序时出现问题,因为(我猜)res 文件夹不在 src 文件夹中,您会得到一个 null URL。而且我想为源代码和资源设置单独的文件夹。
另外,我发现我可以在 Eclipse 中将 res 文件夹添加到类路径中,以便加载它:
URL url = getClass().getResource("/res/icon.png");
if (url == null)
url = getClass().getResource("/icon.png");
ImageIO.read(url);
但是这个添加代码只有在你开发的时候才需要,我不喜欢做这样的事情(代码应该尽可能的干净和最终)。
可以用相同的代码用两种方法读取图标吗?
【问题讨论】:
标签: java eclipse jar resources