我需要在开发期间禁用缓存。目前,每次更改JS或CSS时,我都必须重新运行run-app命令(这需要5-10分钟)。我继承的这个遗留项目是将Grails与嵌入式Tomcat结合使用。
在线示例讨论如何在eventConfigureTomcat文件中的_Events.groovy钩子中配置Tomcat:
eventConfigureTomcat = { tomcat ->
}但是我找不到任何关于如何应用cachingAllowed=false的文档
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="false">
</Context>请记住,我是一个完完全全的Java -只是想找个人为我指明正确的方向。
发布于 2016-10-20 23:01:51
您没有指定Grails版本。从2.3开始,您需要添加-reloading。
grails -reloading run-app这适用于我,并为已更改的文件提供服务,只要浏览器实际上是在发出请求,而不是缓存自身。
在3.x中,这可能不再需要,但是有一些重新加载的配置选项可能会排除js/css。在文档中搜索“重新加载”以获得详细信息。
发布于 2016-10-20 16:58:12
对任何感兴趣的人来说,这和我所得到的一样:
eventConfigureTomcat = { tomcat ->
def context = tomcat.host.findChild(serverContextPath)
context.cachingAllowed = false;
}但是不知道如何测试它,因为这并没有解决缓存问题。
此后,我发现Grails正在缓存dev构建中的文件,社区建议使用Asset Pipeline Plugin来更好地处理旋转、丑陋等问题。
https://stackoverflow.com/questions/40142977
复制相似问题