wiki上的示例似乎工作正常,但我的问题更多的是关于如何实现此结果以及如何使用Eclipsify util最终将项目(包含子项目)导入Eclipse。
https://github.com/playframework/Play20/wiki/SBTSubProjects
对这个项目进行重复数据化(在调整SBT插件版本之后)只会导致* -data项目为Eclipse做好准备。我尝试从戏剧中切换项目!提示并使其他人黯然失色,但无法改变结果。
有没有人找到了设置这类项目并将其纳入Eclipse的好方法?
是否使用'play new'创建了每个子项目?哪些文件被删除?哪个改变了? 我们怎样才能让eclipsify与多个项目一起正常工作。
我在Mac OS X上使用play 2.0.4。我正在构建Scala项目。
感谢。
====更新忽略父键======
我发了几次。我试图让它与戏剧中的例子一起工作!维基。我有这个:
import sbt._
import Keys._
import PlayProject._
import com.typesafe.sbteclipse.core.EclipsePlugin.EclipseKeys
/*
* This contains a data project with models. It also contains a frontend web
* app. Finally, there is a backend project. The backend project is just a copy
* of the fronend project for demonstration purposes, but in real life may
* contain heavy data batch processing jobs or similar. Both projects rely on
* the same database and so must both depend on the data project which contains
* the models.
*/
object ApplicationBuild extends Build {
val appName = "example"
val appVersion = "1.0-SNAPSHOT"
val dataDependencies = Seq(
)
val frontendDependencies = Seq(
)
val backendDependencies = Seq(
)
val dataProject = PlayProject(appName + "-data", appVersion, dataDependencies, path = file("data"), mainLang = JAVA)
val frontend = PlayProject(appName + "-frontend", appVersion, frontendDependencies, path = file("frontend"), mainLang = JAVA).dependsOn(dataProject).aggregate(dataProject)
val backend = PlayProject(appName + "-backend", appVersion, backendDependencies, path = file("backend"), mainLang = JAVA).dependsOn(dataProject).aggregate(dataProject)
val main = PlayProject(appName) dependsOn(frontend,backend) aggregate (frontend,backend)
override def settings = super.settings ++ Seq(EclipseKeys.skipParent in ThisBuild := false)
}
它不会编译。你在某个地方有一个干净的例子,或者你能看到我的错误吗?感谢您的快速回复
答案 0 :(得分:1)
您可以将以下命令添加到顶级项目的build.sbt
或project/Build.scala
,让sbt也为子项目生成项目文件。
EclipseKeys.skipParents in ThisBuild := false
或者您可以直接从播放控制台运行以下命令:
eclipsify skip-parents=false
然后,您可以在Eclipse上单独导入子项目。
在你的情况下,你忘记在最后一行包括'skipParents'的最后一个字母:'/ p>
++ Seq(EclipseKeys.skipParent in ThisBuild := false)
将其更改为:
++ Seq(EclipseKeys.skipParents in ThisBuild := false)