无法通过相对路径检索图像

Cannot retrieve image by relative path

我正在尝试通过相对路径检索图片,但无论我尝试哪种路径组合,它总是 returns java.lang.NullPointerException

private final Icon cardBack = new ImageIcon(getClass().getResource(
    "src/main/resources/Images/cardIcons/cardBack.png"));

https://pastebin.com/sDjP87p3

我相信 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"));

我以前 运行 遇到过这个错误。您必须在路径前添加“/”。

private final Icon cardBack = new ImageIcon(getClass().getResource("/Images/cardIcons/cardBack.png"));

在我将应用程序重新制作为普通 java 项目后工作。显然问题是由Maven引起的,原因尚不清楚。