Play框架和IntelliJ新项目创建 -- 错误

4

我第一次接触Play 2.0。我使用homebrew进行安装。

~/code $ brew info play
play: stable 2.1.0, HEAD
http://www.playframework.org/
/usr/local/Cellar/play/2.1.0 (3998 files, 254M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/play.rb

我创建了一个新项目,并为IntelliJ(12.0.4)设置了该项目。

~/code $ play new playtime
...
play! 2.1.0 (using Java 1.7.0_15 and Scala 2.10.0), http://www.playframework.org
...
OK, application playtime is created.
...
~/code $ cd playtime/
~/code/playtime $ play idea
...
...
[info] Created /.../playtime/.idea_modules/playtime.iml
[info] Created /.../playtime/.idea_modules/playtime-build.iml
~/code/playtime $ 

我打开IntelliJ并重建项目,但我得到以下提示:

scala: Output path /.../playtime/project/target/scala_2.9.2 is shared between: Module 'playtime-build' production, Module 'playtime-build' tests
Currently external Scala compiler prohibits output path sharing.
Either disable the external build mode or configure separate output paths.
TIP: you can use Project Artifacts to combine compiled classes.
  • 如何创建一个干净的空项目以进行构建?
  • 为什么Play会创建一个名为“-build”的模块?它有什么作用?
  • 为什么该模块引用Scala 2.9.2路径?
  • 库scala-2.9.2和scala-2.10.0也被创建,但没有被使用。为什么?
1个回答

4

1) 如何创建一个干净的空项目并进行构建?

即将上传的 IDEA 12.1 的 Play 2.0 插件(版本为 0.2.25 或 0.2.26)在这个方面会更好,希望您在这里不会遇到编译问题。

2-3) 为什么 Play 会创建一个-build模块?它有什么作用?

构建模块是为 SBT 构建文件创建的。SBT 依赖于 Scala 2.9.2(这就是为什么该模块需要 Scala 2.9.2),所以为了拥有更好的编辑器,SBT IDEA 插件创建了这个模块(这是第三方插件,我们自己的 SBT 插件很快就会实现)。然而,创建这样一个令人困惑的模块是不正确的,在 Play 2.0 插件 0.2.25 中,项目创建将清理此模块。因此,您将不会看到这个令人困惑的模块。

4) 在 Scala 模块中使用 scala-2.10.0 库来进行 Scala 编译器。然而,在 Play 2.0 项目中没有使用 Scala 编译器,我们在支持中使用 play 编译器(与捆绑在 play SBT 编译器中)。因此,通常不会使用它,但是您仍然拥有这个库,否则您将从 Scala 编译器收到一些错误消息,这是 Scala 插件可用性问题,您可以在此处发布新问题:http://youtrack.jetbrains.com/issues/SCL


1
有关此事有任何更新吗?我也遇到了同样的问题,使用Play 2.1.1 RC2和IDEA 12.0.4。 - Haspemulator

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接