我是一名尝试使用Play框架运行应用程序的新手开发人员。我已经按照教程学习并成功创建了一个新项目。
但是,当我进入具有项目的目录时,我应该继续操作并输入播放命令,我收到以下错误:
[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
我对该框架知之甚少,不知道从哪里开始纠正我的错误。有什么建议吗?
答案 0 :(得分:3)
你必须以这种方式运行play命令:
./play cmd [app_path] [--options]
在运行项目的情况下,它是
./play run /path/to/projectname
答案 1 :(得分:2)
我在子项目的背景下面临这个问题。
这对我有用。
代码:
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)
}
运行play
命令时,出现以下错误:
错误:
[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] ^
解决方案:
现在,如果我将helloWorldProj
重命名为zhelloWorldProj
,它就可以了!
在这种情况下,play
会将有效项目设置为WebApp
。(因为webAppProj
变量名称按字母顺序排在zhelloWorldProj
之前)
然后我可以通过发出命令HelloWorld
将活动项目更改为project HelloWorld
。
我认为这与sbt
如何使用反射找到Project对象有关。
答案 2 :(得分:1)
需要有关于您的环境(操作系统,播放版本等)的更多详细信息,但如果您收到的错误是播放不是有效的命令,我的第一个行动方案是检查play.sh的路径(I假设您使用非Windows)包含在您的系统路径中?
答案 3 :(得分:1)
我删除了项目文件夹中的所有目录,但它确实有效。不要删除文件(build.properties,Build.scala和plugins.sbt)
答案 4 :(得分:0)
根据您使用的语言,确保您的build.sbt文件中包含以下内容之一:
play.Project.playJavaSettings
play.Project.playScalaSettings
答案 5 :(得分:0)
我也遇到了同样的问题!发生了什么事在我的/ user / xxx / project文件夹中有1.x版本的旧项目。删除该文件夹对我有用!