我正在尝试通过相对路径检索图片,但是无论我尝试使用哪种路径组合,它总是返回java.lang.NullPointerException。
private final Icon cardBack = new ImageIcon(getClass().getResource(
"src/main/resources/Images/cardIcons/cardBack.png"));
答案 0 :(得分:1)
我相信NPE是从ImageIcon
构造函数中抛出的,因为getResource
返回null。
尝试以下操作:
private final Icon cardBack = new ImageIcon(getClass().getClassLoader().getResource("src/main/resources/Images/cardIcons/cardBack.png"));
或者:
private final Icon cardBack = new ImageIcon(ClassLoader.getSystemResource("src/main/resources/Images/cardIcons/cardBack.png"));
答案 1 :(得分:0)
我以前遇到过这个错误。您必须在路径之前添加“ /”。
答案 2 :(得分:0)
private final Icon cardBack = new ImageIcon(getClass().getResource("/Images/cardIcons/cardBack.png"));
在将应用程序重新制作为普通的Java项目后工作。显然,问题是由Maven引起的,原因尚未明了。