在IntelliJ中启用Grails 3.x自动重新加载

时间:2015-04-30 04:46:28

标签: grails intellij-idea

可能不重要,但Grails中的IntelliJ重载选项有问题吗?

从IntelliJ Run App集启动应用程序 Reloading active: false

我尝试通过控制台(powershwell)清理并重新启动应用程序。重新加载是真实的并按预期设置。

运行IntelliJ 14.1.1 / Grails 3.0.1 / JDK 1.8.025

6 个答案:

答案 0 :(得分:2)

尝试从-Xverify:none VM参数

开始

答案 1 :(得分:2)

我与此争吵了一段时间,甚至尝试在调试器中进行一些深层次的踩踏,直到我放弃...

如果通过运行使用IntelliJ运行的grail-app / init /.../应用程序传入,那么'-reloading'参数似乎被grails忽略了: 它会自动重新编译已更改的文件,但正在运行的实例永远不会重新加载。这与使用此方法开始时未设置的springloaded java代理有关。

无论如何 - 我认为有两个重要的事实在起作用: 首先Grails3与Grail2非常不同,并且IntelliJ 14不支持,因此您需要将其作为Gradle项目导入。 其次,您需要使用名为“run”的gradle任务来启动应用程序(在“运行”或“调试”模式下),使用任务 - >应用程序 - >运行然后自动重新加载工作正常。

答案 2 :(得分:2)

如果重新加载活动仍然设置为"错误"请按照以下步骤操作:

  1. 查看IntelliJ窗口的右侧。
  2. 点击Gradle图标。
  3. 点击任务。
  4. 点击应用程序。
  5. 点击“运行”。
  6. 可选:您也可以在VM选项中设置-Xverify:none选项,也可以在VM Arguments中设置。

    如果这没有用,请尝试从1.8.0_25升级到_40,_51或_60。

    祝你好运!

答案 3 :(得分:1)

自动重新加载在Windows中根本不适用于我。

在Ubuntu中,一切都是开箱即用的。对于IntelliJ,我必须在" Grails:Appname"中添加以下VM选项。运行配置:

-noverify -javaagent:/<PATH_TO_GRAILS>/grails/3.0.9/lib/org.springframework/springloaded/jars/springloaded-1.2.4.RELEASE.jar

答案 4 :(得分:1)

这些步骤对我有用:

  1. 将VM选项设置为:-Ddisable.auto.recompile=false -Xverify:none

  2. 将其添加到build.gradle ... buildscript { ... dependencies { ... classpath 'org.springframework:springloaded:1.2.0.RELEASE' ... } } ...

答案 5 :(得分:0)

有一篇关于grails3和itellij的博客文章非常好,没有使用IntelliJ IDEA开发Grails 3应用程序。它是Grails QuickCast系列中的第6位。在分钟号3:20,您将找到-noverify参考。

以下是链接:https://www.ociweb.com/products/grails/grails-quickcast-6-developing-grails-3-applications-with-intellij-idea/