【发布时间】:2017-02-24 15:41:34
【问题描述】:
我正在尝试从我的 java 应用程序的资源文件夹中获取图像。 但是,无论我尝试以何种方式获取资源,它都会给我一个 NPE。
这是我的代码:
JLabel lbl_pic;
ImageIcon i = new ImageIcon(getClass().getClassLoader().getResource("res/img/user.png")); //NPE occurres here
lbl_pic = new JLabel(i);
我的 NetBeans 项目文件夹如下所示:
ProjectName
>Source Packages
>com.scfa.projectName
>main.java
>com.scfa.projectName.res.img
>user.png
谁能告诉我,我做错了什么?
我已经查看了以下主题,但无法使用:
- How to correctly get image from 'Resources' folder in NetBeans
- https://docs.oracle.com/javase/tutorial/deployment/webstart/retrievingResources.html
非常感谢您对我的帮助:)
【问题讨论】:
-
getResource("/res/img/user.png") -
@rkosegi:我试过了,但没用……我知道 NPE 是什么;以及通常如何修复它,但这次我无法让它工作。图像在文件夹中,我也尝试将其放在另一个文件夹中并尝试过,但它也不起作用
-
您的 res 文件夹不应该被命名为资源,并且应该与源包处于同一级别。或者您是否已将构建工具配置为从新路径读取?检查创建的 jar 文件是否存在图像。
-
new ImageIcon(getClass().getClassLoader().getResource("res/img/user.png"))为我工作......但只有在将user.png移动到:src/main/resource/res/img/user.png之后。我的测试类在目录src/main/java
标签: java image netbeans nullpointerexception resources