如何正确获取资源Java项目

时间:2015-11-06 08:05:20

标签: java eclipse resources

在我的项目中,我目前使用eclipse进行设置

enter image description here

但是当我尝试通过调用加载文件“bg.png”时 getClass().getResource("/res/bg.png")getClass().getResourceAsStream("/res/bg.png")我获得了NPE

谁能告诉我这里发生了什么?我从没想过两种方法如何定位文件之间存在很大差异

TIA

1 个答案:

答案 0 :(得分:0)

getClass().getResource[AsStream]()使用类加载器加载资源:与用于根据类路径加载类文件的机制相同的机制。

因此,为了能够加载资源,它必须位于jar文件中或属于类路径的目录下。情况并非如此。

res目录移动到src目录:该文件将位于Eclipse源目录中,Eclipse将"编译"它只需将文件复制到bin / classes /任何目标目录,该目录在运行应用程序时位于类路径中。