2012-03-31 13 views
6

Jestem deweloperem debiutanckim, próbującym uruchomić aplikację za pomocą ram gry. Śledziłem samouczek i mogę z powodzeniem utworzyć nowy projekt.framework do grania nie jest w stanie uruchomić istniejącego projektu

Jednak kiedy wchodzę do katalogu, który ma projekt Mam pracować i wprowadź polecenie odtwarzania pojawia się następujący błąd:

[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 

mam bardzo małą wiedzę na temat ram i Don nie wiem, od czego zacząć poprawiać mój błąd. Jakieś sugestie ?

+0

Czy używasz Play Framework w wersji 2.0 lub 1.2.x? – mguymon

Odpowiedz

0

Problem polegał na różnicy wersji gry. Projekt, nad którym miałem pracować, został opracowany w wersji 1.2, gdzie zainstalowałem wersję 2.0.

Nawiasem mówiąc, możliwa jest praca z wersją 2.0 w projekcie opracowanym przez wersję 1.2, ale zdecydowanie nie należy tego robić, ponieważ na dalszych etapach pojawiają się również problemy.

1

Potrzebujesz więcej informacji o swoim środowisku (system operacyjny, wersja Play itp.), Ale jeśli otrzymujesz błędy, które grają, to nie jest poprawne polecenie, moim pierwszym sposobem działania byłoby sprawdzenie, czy ścieżka do play.sh (Zakładam, że korzystasz z non-windows) znajduje się w ścieżce systemowej?

3

Trzeba uruchomić polecenie grać w ten sposób:

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

gdzie w przypadku prowadzenia projektu, to

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

To pomogło mi. Nie wiem, dlaczego nie działa tak, jak opisuje sam kursor: http://www.playframework.org/documentation/2.0.2/NewApplication – homaxto

1

usunąć wszystkie katalogi w folderze projektu i to działa. Nie usuwaj plików (build.properties, Build.scala i plugins.sbt).

2

Mam do czynienia z tym problemem w kontekście podprojektów.

To właśnie dla mnie zadziałało.


Kod:

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) 

} 

On działa komenda play, pojawia się następujący błąd:

Błąd:

[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] ^

Rozwiązanie:

Teraz, jeśli zmienić nazwę helloWorldProj jak zhelloWorldProj, to działa! W tym przypadku play ustawia aktywny projekt WebApp. (Od webAppProj zmienna nazwa alfabetycznie przychodzi przed zhelloWorldProj)

mogę następnie zmienić aktywny projekt HelloWorld dając komendę project HelloWorld.

Myślę, że ma to coś wspólnego z tym, jak sbt znajduje obiekty projektu za pomocą odbicia.

0

zależności od języka, którego używasz, upewnij się, że jedną z poniższych jest w pliku build.sbt:
play.Project.playJavaSettings
play.Project.playScalaSettings

0

ja również mam taki sam problem! W folderze my/user/xxx/project znajdowały się stare projekty z wersji 1.x. Usunięcie tego folderu działało dla mnie!

Powiązane problemy