`activator~run`不起作用

时间:2015-08-04 19:33:44

标签: playframework sbt typesafe-activator

运行activator ~ run时,会发生以下情况:

  1. 当dev服务器第一次运行时,我在控制台中收到一条消息,说服务器正在侦听端口9000.
  2. 现在,当我对文件进行更改并保存时,没有任何内容输出到控制台。
  3. 但是,当我刷新页面时,我会在控制台中看到有关重新加载的消息,并且浏览器已加载。
  4. 我认为~ run意味着在每次更改文件时重新运行?

3 个答案:

答案 0 :(得分:6)

打开build.sbt文件,检查其中是否包含fork in run := true行。如果是,请删除该行或将值设置为false

为什么?

Activator UI需要此fork来生成进程,因此每次从UI启动应用程序时,它都会首先添加该行以确保它存在。无论如何,它会导致热重载(以及其他一些奇怪的事情,如应用程序挂起,内存泄漏)的一些问题。

答案 1 :(得分:1)

根据Play Docs

  

提示:您可以使用〜运行来运行应用程序,以便在文件更改时启用直接编译。这样,在视图中创建新模板时会自动发现 scala模板文件,并在文件更改时自动编译。如果您使用正常运行,则每次都必须在浏览器上点击“刷新”。

所以它显然只适用于Scala模板文件。

修改

Ryan是对的,只是测试了它,它也适用于Scala文件。

由于“〜”和“run”之间的空白根本不起作用,我认为这也不是问题(你用空格引用它)。

答案 2 :(得分:0)

您是否尝试过键入

来启动控制台
activator

然后在控制台启动后,您可以输入

[your-app] $ ~run

通常,每当更改/添加任何文件时。它将触发编译过程。