Pet*_*ter 16 css grails grails-resources-plugin
最近将grails项目升级到2.3.7并将其插件升级到最新版本,这使得Resources插件达到了1.2.7.这适用于Grails 2.1.2和资源插件1.2RC3,但现在它不是:
每当我有一个css文件通过这样的URL引用某些东西
.checkbox-input-wrap.checked {
background-image: url(/img/uniform-assets/checkbox.png);
}
Run Code Online (Sandbox Code Playgroud)
在网页上它会导致此错误(它在URL的前面留下'资源:/')
GET资源:/img/uniform-assets/checkbox.png net :: ERR_UNKNOWN_URL_SCHEME
dma*_*tro 24
据此前我的意见,这不是我的问题,因为默认情况下,所有的资源下/images,/css并且/js正在担任Grails的即席资源,我用测试.png的文件images.
我再次从我的同事那里看到了这个问题,让我三思而后行.:)在他的情况下,他试图访问/fonts应用程序中使用的插件提供的字体.
在尝试以下答案之前,我尝试通过添加以下配置来禁用css重写:
//Not required
//grails.resources.rewrite.css = false
Run Code Online (Sandbox Code Playgroud)
但是当我处理font资源时,对我来说没有任何意义.
最终,这将作为部分Config.groovy对fonts取得的伎俩.对于您的情况,您需要执行以下操作:
grails.resources.adhoc.includes = ['/img/**']
//If resource served from a plugin
//grails.resources.adhoc.includes = ['/plugins/**', '/img/**']
Run Code Online (Sandbox Code Playgroud)
如果您已经拥有此配置,它将类似于:
grails.resources.adhoc.includes = [
'/images/**', '/css/**', '/js/**', '/img/**'
]
Run Code Online (Sandbox Code Playgroud)
但正如我所说,您可能不需要为grails应用程序中的现有资源添加adhoc包含.
先继续
grails clean (更安全的一面) grails run-app.它不应该再抱怨资源了.