[Generale] lanciatore per programma java
Dalamar
d4lamar a gmail.com
Gio 24 Apr 2008 09:02:42 BST
2008/4/24 robi <roberto.volpini a valdelsa.net>:
> buon giorno a tutti....sto cercando di creare un lanciatore per un
> programma java (sweethome3d).....ma secondo quello che ho letto nei
> forum....nella sezione comando dovrei scrivere:
>
> java /home/robi/SweetHome3D-1.2.1/./SweetHome3D
>
> ma purtroppo non funziona ed come risposta dalla shell ho questa:
>
> robi a robi-laptop:~$ java /home/robi/SweetHome3D-1.2.1/./SweetHome3D
> Exception in thread "main" java.lang.NoClassDefFoundError:
> /home/robi/SweetHome3D-1/2/1///SweetHome3D
> Caused by: java.lang.ClassNotFoundException:
> .home.robi.SweetHome3D-1.2.1...SweetHome3D
> at java.net.URLClassLoader$1.run(URLClassLoader.java:221)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:209)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:324)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:269)
> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:337)
> Error: Could not find the main class.
> Error: A JNI error has occurred, please check your installation and try
> again
> robi a robi-laptop:~$
>
> dove è l'errore?
> visto che se vado manualmente nella directory e digito ./SweetHome3D il
> programma parte.....
>
> spero di aver spiegato bene il problema....
Ciao,
Ti rispondo qui dato che non leggo la "tecnica" e non so se qualcuno
ti ha gia' risposto di la' che sarebbe la sede adeguata.
Devi settare il classpath!
$JAVA_HOME/bin/java -classpath $CLASSPATH $MAINCLASS
Il classpath deve contenere tutte le directory e .jar che contengono
le definizioni delle classi che usi.
quindi molto probabilmente anche la directory dove sta la $MAINCLASS.
Lanciandolo dalla directory ti funziona perche' il classpath non
specificato contiene la "directory di lancio".
Ciao,
d4lamar
Maggiori informazioni sulla lista
Generale