嘿所有, 我刚刚开始使用Netbeans的Grails(6.9.1)。我有一个演示工作,但每次我更改一个groovy文件,我需要构建项目,然后选择运行(即相当于“grails build”和“grails run-app”)。如果已经有一个实例在运行,我需要先关闭该实例。
这似乎不对。看起来我应该能够只更改groovy文件,它会自动重新加载。这不是时髦的观点吗?
这实际上是如何在Netbeans中运行的吗?没有进入IDE战争,其他IDE会做得更好吗?每个人似乎都对IntelliJ中的Grails支持赞不绝口。值得吗?
最后一点......我注意到一个常规的战争maven项目不再自动在F11版本上重新加载。这可能是相关的吗?
由于
- 马蒂亚斯
答案 0 :(得分:2)
即使通过命令行运行grails应用程序,也不要期望重新加载所有文件。
根据您更改的groovy文件,grails运行时自动重新加载将起作用。事实上:
支持在开发模式下重新加载的文件和文件夹:gsp
个文件(在视图文件夹中),grails services
(在服务文件夹中),{{1} },controllers
,taglibs
,css
i18
,resources
个文件,一些javascript
个文件(如Config.groovy),{{1} }。请注意,例如,有一些Grails错误,在Services中使用spring transactional annotation会导致重新加载崩溃
不支持重新加载的文件和文件夹(并要求重新启动应用程序):config
,url mappings
,src/groovy
下的任何代码(在域目录下),一些配置文件,插件中的更改, utils 文件夹下的任何代码(例如,如果您有任何编解码器)
因此,在您的情况下,如果您更改控制器groovy文件并且NetBeans重新启动应用程序,我建议您使用单独的命令行来运行grails应用程序并使用IDE进行代码更改。唯一不好的一面是您不会使用NetBeans调试器。 实际上这是我使用Grails和IntelliJ的方式