Java 无法使用getResource()获取资源

Java 无法使用getResource()获取资源,java,swing,user-interface,nullpointerexception,imageicon,Java,Swing,User Interface,Nullpointerexception,Imageicon,我正在尝试在JButton中使用图像,代码如下: ImageIcon imageIcon = new ImageIcon(MineSweeper.class.getResource("C:\\Users\\___\\Documents\\GitHub\\____\\myImage.png")); buttons[x][y].setIcon(imageIcon); 我知道文件存在,但每次运行时都会出现错误 Exception in thread "AWT-EventQueue-0" java.l

我正在尝试在JButton中使用图像,代码如下:

ImageIcon imageIcon = new ImageIcon(MineSweeper.class.getResource("C:\\Users\\___\\Documents\\GitHub\\____\\myImage.png"));
buttons[x][y].setIcon(imageIcon);
我知道文件存在,但每次运行时都会出现错误

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:205)
线程“AWT-EventQueue-0”java.lang.NullPointerException中的异常 位于javax.swing.ImageIcon.(ImageIcon.java:205) 在环顾四周后,我说这是找不到文件的反应,我很困惑我到底做错了什么。如果我尝试使用绝对路径或相对路径,我会得到这个错误,有人能指出哪里出了问题吗?我一定是看得太简单了

编辑:


正如Alan建议移动文件一样,我将其放入src文件夹,效果很好。显然,在其他地方使用它是不起作用的。

尝试这样设置图像图标

ImageIcon imageIcon = new ImageIcon(getClass().getResource("myImage.png"));

如果您使用IDE,则图像文件应位于src文件夹中。如果您不使用IDE,请将图像与.java文件放在同一文件夹中。

像这样直接传递路径

ImageIcon image = new ImageIcon("c://somepath//image.png");

我不知道,“扫雷舰”在这里有什么帮助

我正在使用IntelliJ 13.0.1,用绝对路径和相对路径文件都试过了,但都没用。不管怎样,显然使用绝对路径是行不通的。我移动了文件,现在没事了,谢谢!没问题,我很高兴它被分类了。这是我正在进行的项目的名称,我已经成功了,谢谢。