2013-05-29 15 views
12

Ciao ragazzi Sto cercando di impacchettare un semplice Jar eseguibile scritto in Scala, tramite la funzione di esportazione di Eclipse.

Quando si tenta di eseguire il vaso da cmd java -jar test2.jar

ottengo il seguente .... Tutte le idee? Grazie.

Caused by: java.lang.NoClassDefFoundError: scala/Predef$ 
     at Parser.Test(Parser.scala:5) 
     at Main.main(Main.java:12) 
     ... 5 more 
Caused by: java.lang.ClassNotFoundException: scala.Predef$ 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     ... 7 more 

risposta

7

È sufficiente aggiungere il jar della libreria scala al classpath.

Si può fare in questo modo (supponendo che il vaso "scala-library.jar" si trova nella directory corrente):

java -cp scala-library.jar -jar test2.jar 

La documentazione per tha java comamnd può essere trovato qui: http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html

+0

Grazie per la risposta . vuoi dirmi come si fa? Sono un novizio completo di Scala, Java ed Eclipse. – Andy

+0

Ho fatto un aggiornamento, controllarlo. –

+1

Aggiunta della libreria Scala al classpath tramite Eclipse: fare clic con il tasto destro del mouse sul progetto -> Percorso di creazione -> Configura percorso di compilazione -> Librerie -> Aggiungi libreria -> Seleziona la libreria di Scala –

0

Puoi anche impacchettare la libreria di scala insieme al tuo progetto. Vedi this inviare

0

ho fatto rimosso "contenitore Scala Biblioteca" dal progetto. Avanti - aggiungere biblioteca di scala necessarie (scala-library.jar) per Java BuildPath (in Proprietà in) come "Aggiungi JAR esterni ..." in mia biblioteca (non come riferimento a scala lib). E tutti innclude a "Ordine e Export" Infine - do Export per il progetto con l'opzione "confezione librerie richieste in generare JAR" e questo funziona bene :)

Problemi correlati