【问题标题】:Reloading static resources in Grails 3在 Grails 3 中重新加载静态资源
【发布时间】:2016-07-12 20:11:32
【问题描述】:

假设在 Grails 3 应用程序中 src/main/resources/public/ 文件夹下有一个 index.html 文件,如何更新它并让更改立即可用而无需重新启动应用程序?

在 Grails 2 中,对 web-app 文件夹的任何更改都会在浏览器重新加载时可用,因此我假设已经引入了缓存机制。

【问题讨论】:

  • 你为什么不把它放到grails-app/assets
  • 一旦放在那里会发生什么?
  • 据我了解,assets 文件夹中的(静态)文件由asset-pipeline(ex-asset 插件,afaik)提供,并且支持缓存/重新加载等。盒子
  • 不使用视图层

标签: grails grails-3.0


【解决方案1】:

通过将静力学从src/main/resources/public/ 移动到src/main/webapp 文件夹来解决。

【讨论】:

  • 无论它们位于这两个目录中的哪个目录,我都无法看到我的静态资产。如果我的应用上下文是“/app”并且我在 test/index.html 下有一个文件webapp,你希望我在 localhost:8080/app/test/ 看到那个页面吗?
  • 请尝试将此配置添加到 application.yml:grails: resources: pattern: '/**'
  • 谢谢!我实际上只是想通了...但是由于某种原因,我仍然必须在 /app/test/ 之后键入 index.html
  • 是的,因为它是静态的。但是你可以使用任何 URL 的控制器来渲染它:github.com/tolyo/angular-qotd/blob/master/core/grails-app/…
  • 感谢您的快速回复。我不跟着你。我有一个完全单页的 web 应用程序,它是用 webpack 构建到 src/main/webapp 文件夹中,由 grails 提供服务的……有没有我可以用 Grails 更改的设置,以便 /app/test/ 呈现索引.html 而不输入 index.html?
猜你喜欢
  • 1970-01-01
  • 2016-06-27
  • 2016-11-26
  • 1970-01-01
  • 1970-01-01
  • 2020-01-18
  • 1970-01-01
  • 1970-01-01
  • 2016-08-09
相关资源
最近更新 更多