# Jar wirft NullPointerException (in Eclipse läuft es)



## Syntax_Error (15. Nov 2009)

Hallo Leute,

da dies mein erster Beitrag hier ist, stelle ich mich bei der Gelegenheit gleich kurz vor. Mein Name ist Mathias (richtig, nur ein t ;D), ich bin 18 Jahre alt und mache derzeit eine Lehre als Fachinformatiker Fachrichtung Anwendungsentwicklung. In der Firma arbeiten wir mit Java, davor hab ich zu Hause schon C++ gemacht.

In meiner Freizeit habe ich nun ein kleines Tool geschrieben, welches in bzw. aus Eclipse heraus auch problemlos läuft. Damit das ganze optisch etwas ansprechender ist, habe ich 2 externe .jars für das Look-and-Feel eingebunden, war alles kein Problem.
Nun, um das Programm auf einem anderem Rechner testen zu können habe ich mit Eclipse eine ausführbare .jar Datei erstellt. Wenn ich diese .jar nun per Doppelklick ausführe will, passiert einfach garnichts. Wenn ich das Ganze über die Konsole ausführen will (java -jar) erhalte ich komischerweise eine NullPointerException.

Da ich in Sachen Java ein Neuling bin, wäre ich sehr froh, wenn ihr mir helfen könntet.

Ach ja, das Betriebssystem ist Windows 7 x64 und es ist die aktuellste JVM installiert...

MfG


----------



## L-ectron-X (15. Nov 2009)

Poste doch mal diese Exception.


----------



## Syntax_Error (15. Nov 2009)

Hier mal die Fehlermeldung aus dem CMD-Fenster:


```
C:\Dokumente und Einstellungen\mnagler\Desktop>java -jar Test.jar
java.lang.NullPointerException
        at de.javasoft.plaf.synthetica.StyleFactory.getStyle(StyleFactory.java:218)
        at de.javasoft.plaf.synthetica.StyleFactory.getStyle(StyleFactory.java:188)
        at javax.swing.plaf.synth.SynthLookAndFeel.getStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthLookAndFeel.updateStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthButtonUI.updateStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthButtonUI.installDefaults(Unknown Source)
        at javax.swing.plaf.basic.BasicButtonUI.installUI(Unknown Source)
        at javax.swing.JComponent.setUI(Unknown Source)
        at javax.swing.AbstractButton.setUI(Unknown Source)
        at javax.swing.JButton.updateUI(Unknown Source)
        at javax.swing.AbstractButton.init(Unknown Source)
        at javax.swing.JButton.<init>(Unknown Source)
        at javax.swing.JButton.<init>(Unknown Source)
        at de.javasoft.plaf.synthetica.SyntheticaLookAndFeel.installCompatibilityDefaults(SyntheticaLookAndFeel.java:900)
        at de.javasoft.plaf.synthetica.SyntheticaLookAndFeel$4.propertyChange(SyntheticaLookAndFeel.java:557)
        at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
        at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(Unknown Source)
        at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
        at javax.swing.UIManager.setLookAndFeel(Unknown Source)
        at LanTools.main(LanTools.java:294)
Exception in thread "main" java.lang.NullPointerException
        at de.javasoft.plaf.synthetica.StyleFactory.getStyle(StyleFactory.java:218)
        at de.javasoft.plaf.synthetica.StyleFactory.getStyle(StyleFactory.java:188)
        at javax.swing.plaf.synth.SynthLookAndFeel.getStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthLookAndFeel.updateStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthMenuBarUI.updateStyle(Unknown Source)
        at javax.swing.plaf.synth.SynthMenuBarUI.installDefaults(Unknown Source)
        at javax.swing.plaf.basic.BasicMenuBarUI.installUI(Unknown Source)
        at javax.swing.JComponent.setUI(Unknown Source)
        at javax.swing.JMenuBar.setUI(Unknown Source)
        at javax.swing.JMenuBar.updateUI(Unknown Source)
        at javax.swing.JMenuBar.<init>(Unknown Source)
        at LanTools.<init>(LanTools.java:47)
        at LanTools.main(LanTools.java:298)
```


----------



## L-ectron-X (15. Nov 2009)

Ja, sieht so aus, als würde die entsprechende Bibliothek fehlen.
Wenn du das LAF gemeinsam mit deinem Programm in eine Jar-Datei packen willst, kannst du das mit dem FatJat-Plugin für Eclipse machen, oder auch per Hand, wie in der FAQ beschrieben.
Du kannst aber auch die Bibliotheken neben deinem Programm ausliefern.

Wo liegt denn die LAF-Bibliothek in deinem fertigen Projekt (außerhalb von Eclipse) ?


----------



## Syntax_Error (16. Nov 2009)

Wenn er eine Klasse nicht finden würde, dann würde ich doch eine ClassNotFoundException zu sehen bekommen, oder liege ich da falsch?


----------



## bygones (16. Nov 2009)

Syntax_Error hat gesagt.:


> Wenn er eine Klasse nicht finden würde, dann würde ich doch eine ClassNotFoundException zu sehen bekommen, oder liege ich da falsch?



muss ja nicht unbedingt eine class sein - vll versucht er eine datei zu laden (zip, themepack oder was auch immer)... das endet meist in einer URL, die bei nicht finden null ist.


----------



## Syntax_Error (16. Nov 2009)

Ich habe es jetzt geschafft eine ausführbare .jar zu erstellen. Das ganze ging eigentlich supereinfach, mit Hilfe des Eclipse-Plugins "FatJar."

Danke für eure Hilfe =)


----------



## Wildcard (16. Nov 2009)

Syntax_Error hat gesagt.:


> Ich habe es jetzt geschafft eine ausführbare .jar zu erstellen. Das ganze ging eigentlich supereinfach, mit Hilfe des Eclipse-Plugins "FatJar."


Du brauchst kein Fatjar, Eclipse hat die Funktion bereits build-in (Runnable Jar).
Aber vorsicht, dabei werden Bibliotheken entpackt und neu verpackt, je nach Bibliothek kann das Lizenzprobleme bedeuten.


----------



## Syntax_Error (17. Nov 2009)

Danke für den Hinweis, ich denke allerdings, das dass hier kein Problem sein sollte...


----------

