• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] jDictionary öffnet nicht

A

Anonymous

Gast
Hallo,
ich habe bei mir soeben jDictionary installiert.
Leider öffnet das Programm nicht, und zeigt mir folgenden Fehler:
21:54 linux:~ # jdictionary
Exception in thread "main" java.lang.Error: can't load com.birosoft.liquid.LiquidLookAndFeel
at javax.swing.UIManager.initializeDefaultLAF(UIManager.java:1176)
at javax.swing.UIManager.initialize(UIManager.java:1257)
at javax.swing.UIManager.maybeInitialize(UIManager.java:1245)
at javax.swing.UIManager.getUI(UIManager.java:851)
at javax.swing.JPanel.updateUI(JPanel.java:104)
at javax.swing.JPanel.<init>(JPanel.java:64)
at javax.swing.JPanel.<init>(JPanel.java:87)
at javax.swing.JPanel.<init>(JPanel.java:95)
at javax.swing.JRootPane.createGlassPane(JRootPane.java:482)
at javax.swing.JRootPane.<init>(JRootPane.java:313)
at javax.swing.JFrame.createRootPane(JFrame.java:247)
at javax.swing.JFrame.frameInit(JFrame.java:228)
at javax.swing.JFrame.<init>(JFrame.java:151)
at info.jdictionary.JDictionaryFrame.<init>(JDictionaryFrame.java:32)
at info.jdictionary.JDictionary.<init>(JDictionary.java:65)
at info.jdictionary.JDictionary.main(JDictionary.java:228)
Was muss ich hier machen, um das Programm zu öffnen ?

Mein Betriebssystem opensuse 10.2

Im Voraus vielen Dank.

Gruß

Sonja Kurtenbach
 

Grothesk

Ultimate Guru
Wie installiert?

smart install jdictionary hat hier ganz wunderbar funktioniert.
Welche Java-Version? Mal mit java -version testen.
 
OP
A

Anonymous

Gast
Hallo,
das jdictionary habe ich mit yast installiert.
Hier meine java Version:
java version "1.5.0_08".
Ich denke, java ist auf dem neuesten Stand ?
Gruß
Sonja Kurtenbach
 

oc2pus

Ultimate Guru
Exception in thread "main" java.lang.Error: can't load com.birosoft.liquid.LiquidLookAndFeel

du musst entweder:
a) in der Datei: /usr/lib/jvm/jre/lib/swing.properties das liquidlnf auskommentieren

oder

b) liquidlnf.jar in den classpath von jdictionary aufnehmen.

also java -cp /usr/share/java/liquidlnf.jar:<andere jars>:<noch mahr jars> <Name der Main-Class>
 
OP
A

Anonymous

Gast
Hallo,
danke für die Hilfe. Leider komme ich damit so nicht zu recht, da ich
für solche Probleme wohl noch zu sehr Anfänger bin.
Könnt ihr mir bitte mal erklären, wie ich vorgehen muss,
um a) die Datei zu umgehen, oder b) die Datei mit aufzunehmen ?

Danke im Voraus

Gruß
Sonja Kurtenbach
 

Mumie

Hacker
Es müsste eigentlich wieder klappen, denn ich vermute, du hast Suse10.2 neu installiert.
Heute Vormittag habe ich meine DVD noch mal drüber laufen lassen,
jetzt funktionerit es wieder.
Ich rate mal, du hast probiert ein update von java zu machen. Wegen des TV-Browsers. Vielleicht liegt dein Problem daran? Ich selbst habe noch das original-Java von der Suse10.2 DVD. Und bei mir läuft das jdictionary ohne Probleme. (Nicht das drucken aus dem TV-Browser).

Du brauchst das jdictionary nicht als root zu starten. Du findest es nach der Installation im Menü unter Büroprogramme => Wörterbuch.
 
OP
A

Anonymous

Gast
Hallo,
ich habe zwar heute nochmals meine DVD drüber laufenlassen,
aber nur aktualisieren gesagt.
Danach jdictionary neu installiert.
An java habe ich noch nichts geändert.
Trotzdem ist die Fehlermeldung immer noch da.
Ich hätte auch gedacht, das es nach der Neuinstallation von
jdictionary klappen müsste.
Denn bei der Neuinstallation werden doch die Abhängigkeiten
geprüft ??
Ich frage mich nur, warum klappt es bei mir nicht ?

Exception in thread "main" java.lang.Error: can't load com.birosoft.liquid.LiquidLookAndFeel
at javax.swing.UIManager.initializeDefaultLAF(UIManager.java:1176)
at javax.swing.UIManager.initialize(UIManager.java:1257)
at javax.swing.UIManager.maybeInitialize(UIManager.java:1245)
at javax.swing.UIManager.getUI(UIManager.java:851)
at javax.swing.JPanel.updateUI(JPanel.java:104)
at javax.swing.JPanel.<init>(JPanel.java:64)
at javax.swing.JPanel.<init>(JPanel.java:87)
at javax.swing.JPanel.<init>(JPanel.java:95)
at javax.swing.JRootPane.createGlassPane(JRootPane.java:482)
at javax.swing.JRootPane.<init>(JRootPane.java:313)
at javax.swing.JFrame.createRootPane(JFrame.java:247)
at javax.swing.JFrame.frameInit(JFrame.java:228)
at javax.swing.JFrame.<init>(JFrame.java:151)
at info.jdictionary.JDictionaryFrame.<init>(JDictionaryFrame.java:32)
at info.jdictionary.JDictionary.<init>(JDictionary.java:65)
at info.jdictionary.JDictionary.main(JDictionary.java:228)

PS: Das Drucken von tvbrowser klappt auch nicht, aber ich habe mir
auf eine kleinen Partition Windows installiert, und kann so das
Programm drucken.

Vielleicht hat ja noch jemand eine Idee, wie ich jdictionary doch noch
starten kann.

Danke im Voraus.

Gruß
Sonja Kurtenbach
 
OP
A

Anonymous

Gast
Hallo,
ich finde es gut, das jemand, der Linux seit Jahren kennt,
sofort das Problem erkennt.
Da ich aber erst in diesem Jahr mit Linux begonnen habe, kann
ich mir diese Fehlermeldung nicht erklären.
Vielleicht kannst du mir ja erklären, wie ich das Problem lösen kann.

Danke im Voraus.

Gruß
Sonja Kurtenbach
 
OP
A

Anonymous

Gast
Hallo,
ich melde mich nochmals hierzu.
Leider habe ich auf meine letzte Nachricht noch keine Antwort
bekommen.
Wer kann mir bei der Lösung meines Problems helfen ?
Danke im Voraus.
Gruß
Sonja Kurtenbach
 

Mumie

Hacker
Vielleicht ist das Wort "auskommentieren" für dich etwas unverständlich. Es bedeutet, du sollst diese Zeile als Kommentar kennzeichnen. Dann wird diese Zeile von deinem Linux nicht beachtet. Meistens wird in solchen Dateien das #-Zeichen zum auskommentieren verwendet. Manchmal auch das %-Zeichen. Schau dir die Datei genau an. Meistens sind sehr viele Kommentare darin. Schau, welches Zeichen verwendet wird. Und setze dieses Zeichen vor liquidlnf. Dann teste, ob dein Linux wie gewünscht funktioniert. Falls nicht, entferne dieses Zeichen wieder.

Weiterhelfen kann ich dir an dieser Stelle nicht. Ich habe selbst kein liquidlnf an der von oc2pus angegebenen Stelle.
 

oc2pus

Ultimate Guru
so sieht die Datei aus:
Code:
swing.installedlafs = motif,windows,metal,mac,liquid
swing.installedlaf.motif.name = CDE/Motif
swing.installedlaf.motif.class = com.sun.java.swing.plaf.motif.MotifLookAndFeel
swing.installedlaf.windows.name = Windows
swing.installedlaf.windows.class = com.sun.java.swing.plaf.windows.WindowsLookAndFeel
swing.installedlaf.metal.name = Metal
swing.installedlaf.metal.class = javax.swing.plaf.metal.MetalLookAndFeel
swing.installedlaf.mac.name = Mac
swing.installedlaf.mac.class = com.sun.java.swing.plaf.mac.MacLookAndFeel
swing.installedlaf.liquid.name = Liquid
swing.installedlaf.liquid.class = com.birosoft.liquid.LiquidLookAndFeel
swing.defaultlaf=com.birosoft.liquid.LiquidLookAndFeel

entweder in der 1. Zeile "liquid" entfernen
und die letzen 3 auskommentieren (ein # davor)

ABER: andere Anwendungen brauchen das liquidlnf ... ich tippe mal auf tvbrowser von mir :mrgreen:

==> besser das jdictionary Startscript anpassen und den Classpath erweitern ...
 

dietger

Hacker
Die letzten 3 Zeilen auskommentieren reicht. Liquid in der 1.Zeile kann stehenbleiben.
Funktioniert bei mir so einwandfrei.


Dietger
 

homer65

Hacker
Hallo Sonja,
habe mal nach der bei dir fehlenden Klasse gegoogelt und bin auf folgende URL gestoßen. https://liquidlnf.dev.java.net/
Von da kannst du dir das fehlende jar File herunterladen. Dann mußt du es nur noch in deinen CLASSPATH einbauen und schon sollte deine Fehlermeldung verschwinden.
Ich weiß nicht wie fitt du mit dem ganzen Java Kram bist. Aber deinen Fehlermeldungen nach wird das fehlende jar File nicht gefunden. Entweder du hast es gar nicht auf deinem Rechner, oder es befindet sich nicht im CLASSPATH.
Gruß Christian
 

homer65

Hacker
Wollte noch anmerken, das man das heruntergeladene jar File auch einfach nach:
/usr/lib/jvm/jre/lib/ext
kopieren kann. Dann spart man sich das gehampel mit dem classpath.
 

oc2pus

Ultimate Guru
homer65 schrieb:
Wollte noch anmerken, das man das heruntergeladene jar File auch einfach nach:
/usr/lib/jvm/jre/lib/ext
kopieren kann. Dann spart man sich das gehampel mit dem classpath.

NEIN NEIN NEIN :)

es gibt Pakete die hängen von sklnlf in einer bestimmten Version ab .. durch deine brachial Methoden sorgst du dafür das diese dann nicht mehr funktionen.

Und wenn die Pakete "ordentlich" nach jpackage Standard erstellt würden, gäbe es dieses Hickhack nicht.

Sie soll dem packager von jDictionary eine mail senden
 
OP
A

Anonymous

Gast
Hallo,
es hat tatsächlich geklappt, ich habe die # vor die letzten 3 Zeilen
gesetzt.
Jetzt öffnet das Programm.
Danke für die Hilfe.
Gruß
Sonja Kurtenbach
 
Oben