为什么sbt在NoClassDefFoundError中失败:在Play 2.3项目中进行sbt编译后,在Play 2.2.x项目中播放/播放$?

ang*_*okh 12 sbt playframework-2.2 playframework-2.3

一旦我在2.3 play项目上运行'sbt compile',我就不能使用'sbt compile'来编译任何Play 2.2.x项目了.这是我运行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?
Run Code Online (Sandbox Code Playgroud)

Tim*_*ier 29

我刚才有同样的问题.在我的情况下,我使用Play 2.4,但它可能是同样的原因.我在项目目录中意外地运行了激活器ui.它创建了一个project/play-fork-run.sbt文件,用于激活器支持,但阻止了sbt直接工作.删除该文件可以解决问题,现在我可以再次使用sbt.


小智 5

尝试更新play-fork-run.sbt

addSbtPlugin("com.typesafe.play" % "sbt-fork-run-plugin" % "2.3.8")
Run Code Online (Sandbox Code Playgroud)

更新到

addSbtPlugin("com.typesafe.play" % "sbt-fork-run-plugin" % "2.4.0")
Run Code Online (Sandbox Code Playgroud)

然后项目将能够建立.