2014-06-24 4 views
11

Sobald ich 'sbt compile' auf einem 2.3 play Projekt ausgeführt habe, kann ich 'sbt compile' nicht mehr verwenden, um irgendwelche Play 2.2.x Projekte zu kompilieren. Dies ist der Fehler beim Ausführen des Befehls sbt.

[info] Loading project definition from /Users/macbookpro/playproject/project 
[error] java.lang.NoClassDefFoundError: play/Play$ 
[error] Use 'last' for the full log. 
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? 
+0

Würde es Ihnen etwas ausmachen, 'sbt about' und die gesamte Sitzung zu der Frage hinzuzufügen? –

+0

Siehe meine Antwort zu [Activator Template-Projekte können nicht ausgeführt werden Activator UI konnte die SBT-Konfiguration nicht laden] (http://stackoverflow.com/questions/32155681/cant-run-activator-template-projects-activator-ui-failed- zu laden-sbt-configurat/34347454 # 34347454). –

Antwort

27

Ich hatte gerade das gleiche Problem. In meinem Fall habe ich Play 2.4 verwendet, aber es ist wahrscheinlich der gleiche Grund. Ich hatte activator ui versehentlich in meinem Projektverzeichnis ausgeführt. Es hat eine project/play-fork-run.sbt Datei erstellt, die für die Unterstützung von Aktivatoren gedacht ist, aber verhindert hat, dass sbt direkt funktioniert. Durch das Löschen dieser Datei wurde das Problem behoben und ich kann sbt nun erneut verwenden.

+0

Mein Kommentar wurde entfernt, da es nichts half. Ich habe deinen Beitrag @tim gewählt. Danke! Überprüft, es funktioniert. –

+0

Sie sparen meinen Tag, Tim :) – shihpeng

+0

... mein Tag auch! – kornfridge

0

Play 2.3 App soll mit Aktivator gebaut werden, um eine ordnungsgemäße sbt-Konfiguration zu gewährleisten. Beste

3

Das interessante Frage ist, da es für mich (TM) auf Mac OS X 10.9.3 mit Java 7.

arbeitet ich die Versionen des Spiels heruntergeladen - die neueste 2.3.1 und die neueste in 2.2.x Strom - 2.2.3. Mit diesen beiden Versionen habe ich activator (2.3.1) verwendet, um die Webanwendung zu erstellen, und play für 2.2.3. Beides hat gut funktioniert.

Wenn ich sbt compile in 2.3.1 und dann 2.2.3 ausgeführt habe, funktionierten auch beide Befehle gut. Es dauerte einige Zeit, alle Abhängigkeiten heruntergeladen haben, aber am Ende die Ergebnisse waren wie folgt:

jacek:~/sandbox/play231-app 
$ sbt compile 
[info] Loading project definition from /Users/jacek/sandbox/play231-app/project 
[info] Updating {file:/Users/jacek/sandbox/play231-app/project/}play231-app-build... 
... 
[info] Done updating. 
[info] Compiling 5 Scala sources and 1 Java source to /Users/jacek/sandbox/play231-app/target/scala-2.11/classes... 
[info] 'compiler-interface' not yet compiled for Scala 2.11.1. Compiling... 
[info] Compilation completed in 14.895 s 
[success] Total time: 200 s, completed Jun 25, 2014 1:00:18 PM 

Und für 2.2.3:

jacek:~/sandbox/play223-app 
$ sbt compile 
[info] Loading project definition from /Users/jacek/sandbox/play223-app/project 
[info] Set current project to play223-app (in build file:/Users/jacek/sandbox/play223-app/) 
[info] Updating {file:/Users/jacek/sandbox/play223-app/}play223-app... 
... 
[info] Done updating. 
[info] Compiling 5 Scala sources and 1 Java source to /Users/jacek/sandbox/play223-app/target/scala-2.10/classes... 
[info] 'compiler-interface' not yet compiled for Scala 2.10.3. Compiling... 
[info] Compilation completed in 19.626 s 
[success] Total time: 45 s, completed Jun 25, 2014 3:15:34 PM 

Ich verwende sbt 0.13.5 installiert mit Homebrew.

$ sbt --version 
sbt launcher version 0.13.5 

$ java -version 
java version "1.7.0_60" 
Java(TM) SE Runtime Environment (build 1.7.0_60-b19) 
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode) 
+0

Vielen Dank für das versuchen. – angelokh

4

Try Aktualisierung Play-Gabel-run.sbt

addSbtPlugin("com.typesafe.play" % "sbt-fork-run-plugin" % "2.3.8") 

Update

addSbtPlugin("com.typesafe.play" % "sbt-fork-run-plugin" % "2.4.0") 

Dann Projekt in der Lage sein, zu bauen.

0

Ich hatte das gleiche Problem. Stellen Sie sicher, dass Sie die Java-8-Version verwenden. Ich benutzte Java-7, änderte zu Java-8 mein Problem behoben.