Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
继续得到这个错误;“线程中的异常”;“主要”;java.lang.NullPointerException_Java_Nullpointerexception - Fatal编程技术网

继续得到这个错误;“线程中的异常”;“主要”;java.lang.NullPointerException

继续得到这个错误;“线程中的异常”;“主要”;java.lang.NullPointerException,java,nullpointerexception,Java,Nullpointerexception,我不断地发现这个错误: Exception in thread "main" java.lang.NullPointerException at javax.swing.ImageIcon.<init>(Unknown Source) at SlotMachinePanel.<init>(SlotMachinePanel.java:55) at SlotMachineDriver.main(SlotMachineDriver.java:16) 我

我不断地发现这个错误:

Exception in thread "main" java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at SlotMachinePanel.<init>(SlotMachinePanel.java:55)
    at SlotMachineDriver.main(SlotMachineDriver.java:16)
我还有一个司机

//Driver for SlotsMachinePanel 


import javax.swing.JFrame; 

public class SlotMachineDriver 
{ 
 //-------------------------------- 
 // Creates the main program frame. 
 //-------------------------------- 
 public static void main (String[] args) 
 { 
 JFrame frame = new JFrame ("Slot Machine"); 
 frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); 

 frame.getContentPane().add(new SlotMachinePanel()); 

 frame.pack(); 
 frame.setVisible(true); 
 } 
}

这似乎返回了
null

getClass().getResource(“casino chips.jpg”)

我会检查是否如此以及原因


然后相应地修复它。

问题是像
(new)这样的行之一
javax.swing.ImageIcon(getClass().getResource(“/programming/assignment/pkg2/programming assignment2/aaa.png”)
找不到资源。请将资源分离为变量,并添加一些日志记录或对其进行调试

URL file = getClass().getResource("/programming/assignment/pkg2/programming assignment2/aaa.png");
LOG.info("Trying to load " + file.toString());
ImageIcon img = new ImageIcon(file);

第55行是什么代码?似乎是这一行:
newjavax.swing.ImageIcon(getClass().getResource(“casino chips.jpg”))
,但您能否在IDE中验证这一点?检查getClass().getResource(“casino chips.jpg”)是否正确return是object还是null?我解决了这个问题,多亏了用户peter.petrov,他指出了哪一行给出了错误的值。看起来我将图像保存在src文件夹而不是bin文件夹中。移动它们解决了这个问题。我应该将图像保存在哪里?我会将它们放在与.java相同的文件夹中吗文件?我想我可能把它们保存在错误的位置。我不擅长这个。我会阅读javadoc,然后寻找一些关于这个主题的示例和简单教程。尝试将它们放在应用程序的工作目录中(类文件所在的根目录)。谢谢,我刚刚试过,但似乎不起作用。我到底应该在哪里保存图像以供Eclipse查找资源?这个问题有很多答案。我搜索了“[java]类getResource URL”,它给了我一些很好的匹配。例如,尝试一下。
URL file = getClass().getResource("/programming/assignment/pkg2/programming assignment2/aaa.png");
LOG.info("Trying to load " + file.toString());
ImageIcon img = new ImageIcon(file);