使用 Grails CDN Asset Pipeline Plugin 获取资产时没有附加哈希码

assets are fetched without the hash code appended while using Grails CDN Asset Pipeline Plugin

我最近在我的项目中配置了这个插件。我的 S3 存储桶中的资产在上传时附加了一些随机哈希码。但是,在检索它们时,哈希码不会附加在请求中。结果它在控制台中显示资源未找到错误。 我正在使用 Asset Pipeline 2.1.1.

创建war文件时,asset pipeline plugin在资产文件名末尾添加哈希值。所以 run-appprod run-app 不会帮助你,因为 war 不是为这些命令创建的。

为此,您可以使用 run-warprod run-war 命令。否则你必须创建 war 并在外部部署 tomcat.

如果您查看 documentation of grails cdn asset pipeline plugin,它显示

grails.assets.url = "https://s3.amazonaws.com/my-bucket/assets/${appName}-${appVersion}"

但这应该只用于生产模式,不能用于开发模式。取自 asset pipeline plugin 的示例:

environments {
    production {
        grails.assets.url = "http://s3.amazonaws.com/asset-pipe/assets/"
    }
}