JAVA - getResource

0

Witam!

Podczas uruchamiania programu z jar, kompilator zwraca mi wyjątek:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:138)
at src.Skatty.Ramka.<init>(Main.java:94)
at src.Skatty.Main$1.run(Main.java:52)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Dzieje się to wtedy i tylko wtedy gdy linijke:

public ImageIcon buzka2 = new ImageIcon("obrazek.png");

zmieniam na:

public ImageIcon buzka2 = new ImageIcon(Main.class.getResource("obrazek.png"));

Z tego co wiem trzeba użyć getResource aby działały obrazki podczas uruchamiania z jar. (obecnie program z jar działa ale bez obrazków- jeśli w kodzie nie ma getResource oczywiście).

Main.java jest moim jedynym plikiem .java w programie.

Prosił bym o pomoc.

0

A masz te obrazki w tym samym katalogu co plik Main.java?
Ja to zawsze robię oddzielny pakiet dla obrazków i daję w nim klasę tylko do wczytywania ich.

0

Który wiersz generuje wyjątek NullPointerException?
Poprzednio opisywałeś swoją strukturę katalogów, obrazki były w podkatalogu GFX, w metodzie getResource() nie ma tego podkatalogu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1