2012-03-31 7 views
6

Ich bin ein Anfänger Entwickler versucht, eine Anwendung mit Play-Framework zu starten. Ich habe das Tutorial verfolgt und kann erfolgreich ein neues Projekt erstellen.spielen Framework kann ein vorhandenes Projekt nicht ausführen

Jedoch, wenn ich in das Verzeichnis, das das Projekt hat ich soll auf die Arbeit und das Spiel Befehl, den ich die folgende Fehlermeldung eingeben:

[error] Not a valid command: play (similar: last, alias, loadp) 
[error] Not a valid project ID: play 
[error] Not a valid configuration: play 
[error] Not a valid key: play (similar: clean) 
[error] play 

Ich habe sehr wenig Wissen über den Rahmen und die don Ich weiß nicht, wo ich anfangen soll, meinen Fehler zu korrigieren. Irgendwelche Vorschläge ?

+0

Spielen Sie Play Framework Version 2.0 oder 1.2.x? – mguymon

Antwort

0

Das Problem war der Versionsunterschied des Spiels. Das Projekt, an dem ich arbeiten sollte, wurde in Play 1.2 entwickelt, wo ich die Version 2.0 installiert habe.

Übrigens, die Arbeit mit 2.0 an einem Projekt, das mit Version 1.2 entwickelt wurde, ist möglich, aber ich empfehle dringend, dies nicht zu tun, da es auch Probleme in den späteren Phasen gibt.

1

Benötigen Sie mehr Details über Ihre Umgebung (OS, Play-Version usw.), aber wenn Sie Fehler bekommen, dass play ist kein gültiger Befehl, würde meine erste Vorgehensweise sein, zu überprüfen, dass der Pfad zu play.sh (Ich nehme an, Sie verwenden nicht Windows) ist in Ihrem Systempfad enthalten?

3

Sie haben den Spielbefehl auf diese Weise auszuführen:

./play cmd [app_path] [--options] 

wo bei einem Projekt einsetzen,

./play run /path/to/projectname 
+0

Das hat mir geholfen. Ich bin mir nicht sicher, warum es nicht so funktioniert, wie es im Tutorial angegeben ist: http://www.playframework.org/documentation/2.0.2/NewApplication – homaxto

1

ist ich alle Verzeichnisse im Projektordner löschen und es funktioniert. Löschen Sie keine Dateien (build.properties, Build.scala und plugins.sbt)

2

Ich stehe im Rahmen von Teilprojekten vor diesem Problem.

Das hat bei mir funktioniert.


Code:

import sbt._ 
import sbt.Keys._ 

object ApplicationBuild extends Build { 

    val helloWorldProj = Project(id = "HelloWorld", base = file("helloworld"))  

    val appName = "WebApp" 
    val appVersion = "1.0" 
    val appDependencies = Seq() 

    val webAppProj = PlayProject(appName, appVersion, appDependencies, path = file("webapp"), mainLang = PlayProject.SCALA) 
    .dependsOn(helloWorldProj) 
    .aggregate(helloWorldProj) 

} 

auf dem play Befehl ausgeführt wird, erhalte ich folgende Fehlermeldung:

Fehler:

[info] Set current project to HelloWorld (in build file:/D:/EclipseProjects/HelloWorldPlayMultiProject/) 
[error] Not a valid command: play (similar: last, alias, loadp) 
[error] Not a valid project ID: play 
[error] Not a valid configuration: play 
[error] Not a valid key: play (similar: play-hash, play-dist, play-conf) 
[error] play 
[error] ^

Lösung:

Jetzt, wenn ich helloWorldProj als zhelloWorldProj umbenenne, funktioniert es! In diesem Fall play setzt das aktive Projekt zu WebApp. (Da webAppProj Variablennamen vor zhelloWorldProj kommen alphabetisch)

dann kann ich das aktive Projekt, indem Sie den Befehl project HelloWorld-HelloWorld ändern.

Ich denke, das hat etwas damit zu tun, wie sbt die Projektobjekte durch Reflexion findet.

0

auf der Sprache Sie verwenden je, stellen Sie sicher, dass Sie eine der folgenden in Ihrer build.sbt Datei:
play.Project.playJavaSettings
play.Project.playScalaSettings

0

Ich habe auch die gleiche Problem! Was passiert ist, war in meinem/user/xxx/Projektordner, da waren alte Projekte aus 1.x Version. Das Löschen dieses Ordners funktionierte für mich!