自定义环境中运行应用程序中的 Grails 自动重新加载功能
Posted
技术标签:
【中文标题】自定义环境中运行应用程序中的 Grails 自动重新加载功能【英文标题】:Grails auto reload functionality in run-app on a custom environment 【发布时间】:2010-11-22 11:34:11 【问题描述】:当通过 grails -Dgrails.env=custom run-app 使用 grails 运行自定义环境时,自动重新加载/热部署似乎已关闭,有谁知道如何为任何给定环境任意启用此功能,而不仅仅是开发,这似乎是默认情况下实际启用的唯一环境?
【问题讨论】:
这里有点晚了,但似乎对自定义运行环境禁用了 GSP 文件的自动重新编译,并且出于某种原因,Grails 也忽略了disable.auto.recompile
标志。通过将-Dgrails.gsp.enable.reload=true
传递给run-app 脚本,我能够重新编译GSP 文件。
【参考方案1】:
我通过将以下内容添加到我的环境(在这种情况下为自定义)Config.groovy 解决了这个问题:
custom
disable.auto.recompile=false
grails.gsp.enable.reload=true
您还可以在运行配置中添加 -reloading 标志:
grails -reloading -Dgrails.env=custom run-app
确保它是第一个参数!
右键单击您的项目 -> 运行方式 -> 运行配置
Blog post about auto refresh in a Grails custom env
【讨论】:
仅适用于 GSP 文件吗?让所有类型的文件自动重新加载不限于 GSP 怎么样? 您看到哪些类型的文件没有重新加载@ishwor? 你说,确保它是第一个参数,但在屏幕截图中它是第二个参数。是不是打错字了? 是的,截图已经过时了,我需要更新一下【参考方案2】:你想要的标志是“disable.auto.recompile”,例如:
grails -Dgrails.env=custom -Ddisable.auto.recompile=false run-app
【讨论】:
这似乎不稳定,例如控制器或它适用的服务中的原始代码更改,但是说应用程序视图或网络应用程序目录中的 js、css 或 html 更改,没有骰子? 那些不会为您自动加载?奇怪,即使没有 disable.auto.recompile,这对我来说也很好。你有缓存的东西吗?如果您使用 firefox 点击 cmd-shift-R(或 Windows 上的 ctl-shift-R)重新加载并绕过缓存。 不,对我来说似乎没有发生,但在开发模式下会发生......非常奇怪。【参考方案3】:通过更改包含项目的文件夹的名称来解决问题...这次是一个包含空格的名称...因为空间相当大,一切都开始正常工作
【讨论】:
请花更多的精力写一个答案。从完整的句子和标点符号开始。 对不起,我想说的是,我通过更改包含我的项目的文件夹的名称来解决问题。以前该文件夹的名称包含空格,删除这些空格后一切正常.. 将我的文件夹示例到 myfolder以上是关于自定义环境中运行应用程序中的 Grails 自动重新加载功能的主要内容,如果未能解决你的问题,请参考以下文章
从 grails 应用程序中的自定义 groovy 文件加载 spring bean
grails spring security自定义用户注册页面
Grails 1.3.5 和 Spring Security Core