J'ai eu quelques problèmes avec le Java. Vérifiez-le.
sebastian@sebastian-desktop:~/scaaaaaaaaala$ Java -cp /home/sebastian/.m2/repository/org/scala-lang/scala-library/2.8.0.RC3/scala-library-2.8.0.RC3.jar:target/scaaaaaaaaala-1.0.jar scaaalaaa.App
Hello World!
C'est cool, d'accord, mais qu'en est-il:
sebastian@sebastian-desktop:~/scaaaaaaaaala$ Java -cp /home/sebastian/.m2/repository/org/scala-lang/scala-library/2.8.0.RC3/scala-library-2.8.0.RC3.jar -jar target/scaaaaaaaaala-1.0.jar
Exception in thread "main" Java.lang.NoClassDefFoundError: scala/Application
at Java.lang.ClassLoader.defineClass1(Native Method)
at Java.lang.ClassLoader.defineClassCond(ClassLoader.Java:632)
at Java.lang.ClassLoader.defineClass(ClassLoader.Java:616)
at Java.security.SecureClassLoader.defineClass(SecureClassLoader.Java:141)
at Java.net.URLClassLoader.defineClass(URLClassLoader.Java:283)
at Java.net.URLClassLoader.access$000(URLClassLoader.Java:58)
at Java.net.URLClassLoader$1.run(URLClassLoader.Java:197)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.net.URLClassLoader.findClass(URLClassLoader.Java:190)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:307)
at Sun.misc.Launcher$AppClassLoader.loadClass(Launcher.Java:301)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:248)
at scaaalaaa.App.main(App.scala)
Caused by: Java.lang.ClassNotFoundException: scala.Application
at Java.net.URLClassLoader$1.run(URLClassLoader.Java:202)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.net.URLClassLoader.findClass(URLClassLoader.Java:190)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:307)
at Sun.misc.Launcher$AppClassLoader.loadClass(Launcher.Java:301)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:248)
... 13 more
Wat le diable? Une idée pourquoi le premier fonctionne et pas le 2ème? Comment puis-je ma scala ??
Merci d'avance, mon frère.
Si vous définissez -jar, le -classpath est ignoré:
-jar Lorsque vous utilisez cette option, le fichier JAR est la source de tous les utilisateurs classes et autres chemins d'accès aux classes d'utilisateurs les paramètres sont ignorés.
Vous pouvez définir les dépendances de chemin de classe dans les métadonnées Manifest .
Le moyen le plus simple de démarrer votre application consiste à utiliser les scripts scala:
scala -classpath target/scaaaaaaaaala-1.0.jar scaaalaaa.App Hello World!
Simplement en cours d'exécution
scala scaaaaaaaaala-1.0.jar
travaille pour moi avec 2.11.6
Pour un jar exécutable, le classpath doit être dans le manifeste du jar. Pour obtenir de l'aide à cet égard, parcourez les réponses à Stackoverflow: Comment créer un fichier jar exécutable avec des fichiers jar de dépendance .
Vous trouverez ci-dessous le moyen d'exécuter le fichier exécutable Scala.
Scala doit être installé sur votre système.
Ici en premier donnera le chemin et le nom du pot
Si votre code nécessite un fichier jar de dépendance, conservez tous les fichiers jar dans un répertoire et indiquez le chemin de cette commande in, comme ci-dessous après le ":".
scala -cp "/your/jar/path/jar_name.jar:/your/dependency/jar/path/*" SampleCode