`activator ~ 运行` 不起作用

`activator ~ run` doesn't work

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

  1. 当开发服务器第一次 运行s 时,我在控制台中收到一条消息,说服务器正在侦听端口 9000。
  2. 现在,当我对文件进行更改并保存时,没有任何内容输出到控制台。
  3. 但是,当我刷新页面时,我在控制台中看到一条关于重新加载的消息,然后浏览器加载。

我认为 ~ run 意味着每次文件更改时重新 运行?

根据Play Docs

Tip: You can run your application using ~run to enable direct compilation on file change. This way scala template files are auto discovered when you create a new template in view and auto compiled when the file changes. If you use normal run then you have to hit Refresh on your browser each time.

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

编辑

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

因为它对“~”和 "run" 之间的空格根本不起作用,我想这也不是问题(你用空格引用它)。

您是否尝试过先通过键入

来启动控制台
activator

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

[your-app] $ ~run

通常,只要有任何文件changed/added。它将触发编译过程。

打开您的 build.sbt 文件并检查它是否包含像 fork in run := true 这样的行。如果是,删除该行或将值设置为 false.

这是为什么?

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