[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