Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: spouštění .jar v terminálu  (Přečteno 2260 krát)

maydule

  • Aktivní člen
  • *
  • Příspěvků: 122
spouštění .jar v terminálu
« kdy: 29 Prosince 2009, 18:11:09 »
Ahoj,
vyskytla se mi menší záhada, tak chci poprosit o radu, jestli se někdo s tímto setkal... Na ubuntu 9.10, s nainstalovanou Javou Sun 6 používám FreeRapid Downloader. Vždy jsem ho spouštěla v terminálu pomocí
Kód: [Vybrat]
java -jar frd.jar bez nejmenších potíží. Včera mi terminál začal hlásit chybu, viz kód níže, a program nespustí. Mezi posledním úspěšným spuštěním a prvním zjevením chyby jsem nic nepředělávala, tak netuším, jak to vzniklo. 
Kód: [Vybrat]
hasenka@hasenka:~/FreeRapid-0.83u1$ java -jar frd.jar
Exception in thread "main" java.lang.NoClassDefFoundError: cz.vity.freerapid.core.MainApp
   at java.lang.Class.initializeClass(libgcj.so.10)
Caused by: java.lang.ClassNotFoundException: java.awt.SplashScreen not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:frd.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
   at java.net.URLClassLoader.findClass(libgcj.so.10)
   at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.10)
   at java.lang.ClassLoader.loadClass(libgcj.so.10)
   at java.lang.ClassLoader.loadClass(libgcj.so.10)
   at java.lang.Class.initializeClass(libgcj.so.10)
Hm. Když si najdu frd.jar ve složce a pomocí pravého tlačítka dám otevřít s Sun Java 6 Runtime, v pořádku se spustí a vše běží. Tušíte prosím někdo, kde je chyba a proč to nejde přes terminál?  ???

Vypnout/zapnout program/počítač jsem zkoušela. Přeinstalovat FreeRapid Downloader jsem zkoušela, Javu rovněž. Zde na fóru jsem nalezla podobný problém dvakrát, viz
http://forum.ubuntu.cz/index.php/topic,31693.msg279080/topicseen.html#msg279080 nebo starší
http://forum.ubuntu.cz/index.php/topic,18376.msg132392/topicseen.html#msg132392 ale vždy bez řešení. Na googlu se mi řešení nalézt nepodařilo, možná jsem jen zadávala špatná klíčová slova, jestli někdo zná to kouzelné, moc prosím o radu  ;)

Už mě nenapadá, co dodat, kdyžtak řekněte a já doplním... Předem moc děkuju za radu!  :)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re: spouštění .jar v terminálu
« Odpověď #1 kdy: 29 Prosince 2009, 18:27:13 »
Vypadá to, že jste si nějak (nejspíš jako závislost jiného programu) nainstalovala svobodnou Java (GCJ) se kterou FRD nefunguje. Je tedy potřeba nastavit Suní Javu jako výchozí -- návod zde: http://wiki.ubuntu.cz/Java#V.2BAP0-b.2BARs-r_v.2BAP0-choz.2BAO0_verze_Javy

maydule

  • Aktivní člen
  • *
  • Příspěvků: 122
Re: spouštění .jar v terminálu
« Odpověď #2 kdy: 29 Prosince 2009, 18:53:08 »
Díky moc za návod! Podle něj:
Kód: [Vybrat]
hasenka@hasenka:~$ update-java-alternatives -l
java-6-sun 63 /usr/lib/jvm/java-6-sun
hasenka@hasenka:~$ sudo update-java-alternatives -s java-6-sun
[sudo] password for hasenka:
update-alternatives: error: pro appletviewer neexistují žádné alternativy.
update-alternatives: error: pro apt neexistují žádné alternativy.
update-alternatives: error: pro extcheck neexistují žádné alternativy.
update-alternatives: error: pro HtmlConverter neexistují žádné alternativy.
update-alternatives: error: pro idlj neexistují žádné alternativy.
update-alternatives: error: pro jar neexistují žádné alternativy.
update-alternatives: error: pro jarsigner neexistují žádné alternativy.
update-alternatives: error: pro javac neexistují žádné alternativy.
update-alternatives: error: pro javadoc neexistují žádné alternativy.
update-alternatives: error: pro javah neexistují žádné alternativy.
update-alternatives: error: pro javap neexistují žádné alternativy.
update-alternatives: error: pro java-rmi.cgi neexistují žádné alternativy.
update-alternatives: error: pro jconsole neexistují žádné alternativy.
update-alternatives: error: pro jdb neexistují žádné alternativy.
update-alternatives: error: pro jhat neexistují žádné alternativy.
update-alternatives: error: pro jinfo neexistují žádné alternativy.
update-alternatives: error: pro jmap neexistují žádné alternativy.
update-alternatives: error: pro jps neexistují žádné alternativy.
update-alternatives: error: pro jrunscript neexistují žádné alternativy.
update-alternatives: error: pro jsadebugd neexistují žádné alternativy.
update-alternatives: error: pro jstack neexistují žádné alternativy.
update-alternatives: error: pro jstat neexistují žádné alternativy.
update-alternatives: error: pro jstatd neexistují žádné alternativy.
update-alternatives: error: pro native2ascii neexistují žádné alternativy.
update-alternatives: error: pro rmic neexistují žádné alternativy.
update-alternatives: error: pro serialver neexistují žádné alternativy.
update-alternatives: error: pro schemagen neexistují žádné alternativy.
update-alternatives: error: pro wsgen neexistují žádné alternativy.
update-alternatives: error: pro wsimport neexistují žádné alternativy.
update-alternatives: error: pro xjc neexistují žádné alternativy.
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/appletviewer
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/apt
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/extcheck
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/HtmlConverter
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/idlj
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jarsigner
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jar
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/javac
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/javadoc
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/javah
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/javap
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/java-rmi.cgi
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jconsole
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jdb
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jhat
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jinfo
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jmap
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jps
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jrunscript
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jsadebugd
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jstack
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jstatd
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/jstat
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/native2ascii
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/rmic
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/serialver
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/schemagen
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/wsgen
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/wsimport
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-6-sun/bin/xjc
z čehož moc moudrá nejsem  ;)
když ovšem následně zkusím
Kód: [Vybrat]
hasenka@hasenka:~/FreeRapid-0.83u1$ java -jar frd.jar
program se spustí!  ;D
Tak se jen možná hloupě zeptám - po takové spouště errorů že by se to spravilo?  :D Vůbec si nestěžuju, jsem moc ráda, že to běhá, jen mi to vrtá hlavou  ;)
Ještě jednou díky!!

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re: spouštění .jar v terminálu
« Odpověď #3 kdy: 29 Prosince 2009, 20:27:28 »
Hm, to je nějaký divný. Ale hlavně, že to funguje :D

petergula

  • Stálý člen
  • **
  • Příspěvků: 1016
Re: spouštění .jar v terminálu
« Odpověď #4 kdy: 29 Prosince 2009, 20:41:25 »
A nebudu tie chyby(alternative does not exist) pri zmene javy sposobene tym, ze mas nainstalovane iba jre a nie jdk/sdk? V jre nie su obsiahnute vyvojarske nastroje ako java compiler (javac), rmi compiler (rmic), ascii konvertor (native2ascii) ...
ntbk Dell 6420 (Amd Ati, Intel i7, 4GB RAM, 256GB SSD ...)
secondary/u svokrovcov:
Xubuntu (64bit) ntbk Asus A6Je (Ati X1450, Intel Core2Duo T5500, 2.5GB RAM ...)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re: spouštění .jar v terminálu
« Odpověď #5 kdy: 29 Prosince 2009, 21:30:49 »
A nebudu tie chyby(alternative does not exist) pri zmene javy sposobene tym, ze mas nainstalovane iba jre a nie jdk/sdk? V jre nie su obsiahnute vyvojarske nastroje ako java compiler (javac), rmi compiler (rmic), ascii konvertor (native2ascii) ...

Jo to možná jo, ale můj původní odhad chyby byl v tom, že je nainstalováno víc verzí Javy, což podle výpisu update-alternatives není -- tzn. to nemohlo nic opravit, takže je docela záhada proč to mayduli zase funguje :)

petergula

  • Stálý člen
  • **
  • Příspěvků: 1016
Re: spouštění .jar v terminálu
« Odpověď #6 kdy: 29 Prosince 2009, 22:05:30 »
A nebudu tie chyby(alternative does not exist) pri zmene javy sposobene tym, ze mas nainstalovane iba jre a nie jdk/sdk? V jre nie su obsiahnute vyvojarske nastroje ako java compiler (javac), rmi compiler (rmic), ascii konvertor (native2ascii) ...

Jo to možná jo, ale můj původní odhad chyby byl v tom, že je nainstalováno víc verzí Javy, což podle výpisu update-alternatives není -- tzn. to nemohlo nic opravit, takže je docela záhada proč to mayduli zase funguje :)

Ono
Kód: [Vybrat]
update-java-alternatives -l podla mna vypisuje javy z /usr/lib/jvm/.*.jinfo, ale ak ma clovek niekde javu len tak nejak bokom nainstalovanu, a ma k nej cestu, tak to samozrejme nevypise, ale to su len domnienky, mozno ak by dotazovatelka pohladala po systeme javu, tak by nasla aj tu, co v zozname nemala a predsa jej spustala ten program, lebo z toho prveho vypisu je jasne, ze niekde v systeme gcj mala (gnu.gcj.runtime.SystemClassLoader - class loader bol pritomny a pracoval).
ntbk Dell 6420 (Amd Ati, Intel i7, 4GB RAM, 256GB SSD ...)
secondary/u svokrovcov:
Xubuntu (64bit) ntbk Asus A6Je (Ati X1450, Intel Core2Duo T5500, 2.5GB RAM ...)

Vojtěch Trefný

  • Příspěvků: 9307
  • Don Quijote
Re: spouštění .jar v terminálu
« Odpověď #7 kdy: 29 Prosince 2009, 22:50:22 »
z toho prveho vypisu je jasne, ze niekde v systeme gcj mala (gnu.gcj.runtime.SystemClassLoader - class loader bol pritomny a pracoval).

Z toho jsem taky právě odvozoval tu mou první radu, ale neumím si nějak představit, jak by tam tu Javu dostala tak, aby o ní update-alterantives nevěděl (všechny distribuční javovský balíčky by to měly mít ošetřený a to, že si něco sama instalovala ručně se mi nějak nezdá :)).

Tohle už je trochu hodně teoretická debata -- hlavě, že to funguje tak, jak má :)

maydule

  • Aktivní člen
  • *
  • Příspěvků: 122
Re: spouštění .jar v terminálu
« Odpověď #8 kdy: 30 Prosince 2009, 02:41:24 »
A nebudu tie chyby(alternative does not exist) pri zmene javy sposobene tym, ze mas nainstalovane iba jre a nie jdk/sdk?

Nevím, ale je to tak, je nainstalované jen jre...  :)

maydule

  • Aktivní člen
  • *
  • Příspěvků: 122
Re: spouštění .jar v terminálu
« Odpověď #9 kdy: 30 Prosince 2009, 02:45:19 »
z toho prveho vypisu je jasne, ze niekde v systeme gcj mala (gnu.gcj.runtime.SystemClassLoader - class loader bol pritomny a pracoval).

Z toho jsem taky právě odvozoval tu mou první radu, ale neumím si nějak představit, jak by tam tu Javu dostala tak, aby o ní update-alterantives nevěděl (všechny distribuční javovský balíčky by to měly mít ošetřený a to, že si něco sama instalovala ručně se mi nějak nezdá :)).

Tohle už je trochu hodně teoretická debata -- hlavě, že to funguje tak, jak má :)

Já tam taky o žádné další Javě nevím, já jí tam necpala  ;D no co, funguje to  ;D třeba to byla taková homeopatická léčba, nebo čisté placebo, nebo si to jen chtělo popovídat... Kdo ví  ;D Díky moc za pomoc!  :)

 

Provoz zaštiťuje spolek OpenAlt.