Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich habe gerade ein kleines Programm geschrieben, womit ein JFrame mit einem kleinen Bild generiert wird, also ein ganz simples Programm.
Ich benutze immer IntelliJ wenn ich programmiere und wenn ich dort auf "Run" drücke, passiert das, was auch passieren soll, es kommt ein Fenster mit einem kleinen Bild.
Nun habe ich aus meiner Main-Klasse ein Jar-File gemacht. Wenn ich dann mein .jar-File ausführe, kommt zwar ein Fenster, aber dort wird kein Bild angezeigt. Warum?
Source Code:
Java:
package main;
import javax.swing.*;
/**
* Created by Kenta1561 on 11.06.2016.
*/
public class Main {
public static void main(String[] args) {
JFrame frame = new JFrame("Test");
JPanel panel = new JPanel();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setSize(500,300);
frame.setLocationRelativeTo(null);
JLabel picture = new JLabel(new ImageIcon("src/Test.png"));
panel.add(picture);
frame.add(panel);
frame.setVisible(true);
}
}
Sorry aber diese Frage taucht jetzt zum dritten mal in 3 Tagen auf. MAcht sich eigentlich keiner die Mühe wenigstens die letzten paar Beiträge eine Forums anzusehen???
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:217)
at main.Main.main(Main.java:56)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Oder meinst du dass ich nur
Java:
Main.class.getResource("/Test.png");
schreiben soll?
Wenn ja, dann kommt keine Fehlermeldung, bloß halt einfach ein Fenster ohne Bild.
Who knows ^^
Ich habe bei mir das selbe Szenario aufgebaut, und es geht x) Also irgendwo muss der Fehler ja liegen. Dateiname ist "Test" ? nicht "test" oder so x)?
@Cromewell
Ok, in meinem Beispielcode hat es funktioniert, ich gucke nochmal über mein Hauptprojekt, irgendwas ist ja anders als mein Testprojekt.
NACHTRAG: Dieses "Main" bei Main.class.getResource, muss irgendwas in meinem Projekt "Main" heißen damit das klappt? Also meine Main-Klasse heißt Main, aber...
nicht. Bei mir geht das nur mit den Klammern nach getClass
Außerdem krieg ich da auch ne NullPointer.
Ich weiß nicht was in meinem Hauptprojekt anders sein soll. Die Klasse heißt Main, ist im main-package wie beim Testprojekt, da sind halt ein wenig mehr Komponenten auf dem JFrame...
@Cromewell Irgendwie wurde mein .png nicht mit in meine .jar-Datei reingezogen, hab ich mit winrar jetzt gerade manuell gemacht, jetzt funktioniert es. Warum wurde mein Bild nicht mitkopiert? + Obwohl in meinem Editor die Test.png angezeigt wird, kommt ja eine NullPointerException.