Klasse.getResource() gibt null zurück

Ich versuche, Bilder anzeigen, die auf dem JPanel, aber ich erhalte die Fehlermeldung :

java.lang.IllegalArgumentException: input == null!

Verstehe ich nicht, was passiert ist.

Hier ist der code, den ich verwende:

public void actionPerformed(ActionEvent e) {
    try {
        Image image=ImageIO.read(getClass().getResource("img/" +num.getText()+".jpg"));

        Image resized = image.getScaledInstance(200, 200, 100);
        pictureFrame.setIcon(new ImageIcon(resized));
    } catch (Exception ex){
        ex.printStackTrace();
    }
}

Dies führt nur zu mir immer der Fehler!

Stack-trace erzeugt die folgenden:

Java.lang.IllegalArgumentException: input == null!
    at javax.imageio.ImageIO.read(ImageIO.java:1362)
    at work.Item.actionPerformed(Item.java:96)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.Component.processMouseEvent(Component.java:6297)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
    at java.awt.Component.processEvent(Component.java:6062)
    at java.awt.Container.processEvent(Container.java:2039)
    at java.awt.Component.dispatchEventImpl(Component.java:4660)
    at java.awt.Container.dispatchEventImpl(Container.java:2097)
    at java.awt.Component.dispatchEvent(Component.java:4488)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
    at java.awt.Container.dispatchEventImpl(Container.java:2083)
    at java.awt.Window.dispatchEventImpl(Window.java:2489)
    at java.awt.Component.dispatchEvent(Component.java:4488)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:668)
    at java.awt.EventQueue.access$400(EventQueue.java:81)
    at java.awt.EventQueue$2.run(EventQueue.java:627)
    at java.awt.EventQueue$2.run(EventQueue.java:625)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$3.run(EventQueue.java:641)
    at java.awt.EventQueue$3.run(EventQueue.java:639)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:638)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Wie kann ich dieses Problem lösen? Ich habe den Speicherort des Bildes, und haben versucht, von verschiedenen Standorten und immer die gleichen Fehler!

Bin ich mit der Netbeans IDE.

getClass().getResource("img/" +num.getText()+".jpg") zurück null. Gibt: EIN URL-Objekt oder null, wenn keine Ressource mit diesem Namen gefunden wird
laut deinem Beitrag, es sollte einfach sein zu verstehen, was das problem durch die Verwendung von debugging-Modus
Ist das aktuelle Arbeitsverzeichnis nicht das, was Sie erwarten, es zu sein? Auch haben Sie sich abgemeldet "img/"+num.getText()+".jpg" um sicherzustellen, dass es ist, was Sie erwarten?
mit den debugging-Modus das, was passiert. sobald die Linie 96 ist zu Lesen getClass().getResource("img/" +num.getText()+".jpg" wirft er die exception?
ich legte die Bilder-Ordner im src wo alle .java-Dateien und Fehler gab. Vor die Tür gesetzt src und gab auch Fehler.. was ist das problem?

InformationsquelleAutor user2201158 | 2013-03-22

Schreibe einen Kommentar