thymeleaf模板的更新问题倒是解决了,portal module 的 resources路径下的样式文件等静态资源没法重载更新,我记得这个热重载一般是IDE支持的,比如 Intellij 有个 update resources (当结构修改时)。插件好像没有这些设置。
Update resource 应该是对idea 中的artifact 起作用,CUBA 项目在Studio中是没有artifact的,所以应该部署不了,我们正好也在处理这个问题,晚点我告你临时解决方案。
1 个赞
太好啦,谢谢,不用着急
我们的方案是使用 IDEA 的 FileWatcher 插件执行ant脚本,filewatcher监测到文件发生变化,调用 ant脚本复制变化的文件到目标路径:
Ant脚本参考:
StaticResourceSync.xml (674 字节)
FileWatcher配置参考:
关于 FileWatcher的使用方法见IDEA文档,关于ANT脚本的用法参考ant相关文档。
实践下来后发现,deploy中的文件倒是更新了,但是似乎tomcat没有重载文件,前端刷新缓存也无效
之后添加 Context
到 deploy/tomcat/conf/server.xml
中解决问题:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- Hot reload static files -->
<Context path="/cy-portal/resources"
docBase="D:/source/intellij/cy/deploy/tomcat/webapps/cy-portal/resources"
reloadable="true" crossContext="true" />
1 个赞
完美!也感谢你能反馈最终结果给社区。