J'ai un projet très simple qui se compose d'un fichier .scala
, un fichier build.sbt
, et un dossier /lib
avec un seul .jar
en elle. Ma scalaVersion est définie sur 2.10.5 (pour la rétrocompatibilité) et j'ai exécuté sbt compile
, et sbt télécharge .jars pour scala-2.10 et scala-swing. Il semble donc que cette partie travaille ...scala.swing NoClassDefFoundError
Quand je sbt run
je reçois une erreur d'exécution:
[info] Running GuiProgramOne
[error] (run-main-0) java.lang.NoClassDefFoundError: scala/collection/GenTraversableLike$class
java.lang.NoClassDefFoundError: scala/collection/GenTraversableLike$class
at scala.swing.RefSet.<init>(Publisher.scala:167)
at scala.swing.Publisher$$anon$1.<init>(Publisher.scala:34)
at scala.swing.Publisher$class.$init$(Publisher.scala:34)
at scala.swing.Window.<init>(Window.scala:25)
at scala.swing.Frame.<init>(RichWindow.scala:77)
at scala.swing.MainFrame.<init>(MainFrame.scala:19)
at UI.<init>(UI.scala:3)
at GuiProgramOne$.main(UI.scala:11)
at GuiProgramOne.main(UI.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
Caused by: java.lang.ClassNotFoundException: scala.collection.GenTraversableLike$class
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at scala.swing.RefSet.<init>(Publisher.scala:167)
at scala.swing.Publisher$$anon$1.<init>(Publisher.scala:34)
at scala.swing.Publisher$class.$init$(Publisher.scala:34)
at scala.swing.Window.<init>(Window.scala:25)
at scala.swing.Frame.<init>(RichWindow.scala:77)
at scala.swing.MainFrame.<init>(MainFrame.scala:19)
at UI.<init>(UI.scala:3)
at GuiProgramOne$.main(UI.scala:11)
at GuiProgramOne.main(UI.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
[trace] Stack trace suppressed: run last compile:run for the full output.
java.lang.RuntimeException: Nonzero exit code: 1
at scala.sys.package$.error(package.scala:27)
Structure du répertoire:
.
├── build.sbt
├── GUI.class
├── GUI$.class
├── lib
│ └── scala-swing-2.9.1.jar
├── project
│ └── target
│ └── config-classes
│ ...
├── target
│ └── streams
│ ...
└── GUI.scala
build.sbt:
lazy val root = (project in file(".")).
settings(
inThisBuild(List(
scalaVersion := "2.10.5"
)),
name := "Game of Life",
libraryDependencies ++= Seq(
"org.scala-lang" % "scala-swing" % "2.9.1"
)
)
code: http://otfried.org/scala/index_28.html
hooray, merci, cela a fonctionné !! J'ai effectivement essayé de les faire à la fois 2.10.6 et cela n'a pas fonctionné, mais 10.5 fonctionne. Je ne sais pas pourquoi mais je vais le prendre pour l'instant. :) – Xianny
bienvenue !! .. :) –