12

目前我正在同时运行 eclipse 和播放(使用 ~run)。当我更改文件时,它将由 play 和 eclipse 编译。

是否可以避免这两个编译步骤之一?

据我所知,eclipse插件也使用sbt来构建项目,所以也许有办法在eclipse中执行play“run”命令?

(我问是因为我的笔记本电脑不是很快,编译需要一些时间,我希望播放网页上宣传的“快速周转”;)

4

3 回答 3

5

Build Automatically您可以从菜单中关闭,Project而不会丢失任何 IDE 功能。二进制文件只能由 Sbt 构建(在命令行上)。

可以在 Scala IDE 网站上找到使用 Scala IDE 设置 Play 2 的详细指南:http: //scala-ide.org/docs/tutorials/play20scalaide20/index.html

于 2012-06-08T13:35:36.077 回答
1

我还没有尝试在 Eclipse 中运行 play run sbt 任务。

但是您可以直接从 eclipse 运行服务器。

  1. 将“target/scala-2.9.1/classes”添加到您的类路径中,使用过滤器仅包含您的资产。(项目属性,Java 构建路径)
  2. 从运行按钮菜单中选择“运行配置...”。
  3. 使用您喜欢的名称创建一个新的“Java 应用程序”配置。
  4. 主选项卡:使用“DebugStart”作为主类
  5. 参数选项卡:配置 VM 参数中可能需要的任何“-Dconfig.file=...”“-Dlogger.file”选项
  6. 类路径选项卡:将 conf 目录添加到类路径(高级/添加文件夹)

使用以下命令创建 DebugStart.scala:

import play.core.server.NettyServer
import java.io.File
import play.core.SBTLink
import play.core.TestApplication
import play.api.test.FakeApplication
import play.api.test.TestServer

object DebugStart {
  def main(args: Array[String]) {
    val app = FakeApplication()
    val server = TestServer(9000, app)
    server.start()
  }
}

您现在可以使用 run 或 debug 启动应用程序。如果您使用调试,您可以执行一些代码更改而无需重新启动。

我的 DebugStart.scala 版本实际上包含一些依赖于平台的 hackish 代码来杀死任何正在运行的进程,这样我就可以按 F11 或 CTRL+F11 来重新启动应用程序。

为确保您的资产/来源是最新的,请运行:

> sbt
...
[your project] $  ~ ;play-copy-assets;sources
于 2012-11-15T16:01:23.333 回答
0

IntelliJ Idea 12 (Leda) 即将推出。我使用 11 有一段时间了,没有这样的问题,但新版本将提供更好的 Play 2.0 集成。

于 2012-11-16T21:24:57.720 回答