创建grails自定义资源映射器

创建grails自定义资源映射器,grails,Grails,我使用资源插件中的说明创建了以下资源映射器: import org.grails.plugin.resource.mapper.MapperPhase import org.apache.commons.logging.LogFactory class VersionResourceMapper { def phase = MapperPhase.MUTATION def log = LogFactory.getLog(this.class) static defa

我使用资源插件中的说明创建了以下资源映射器:

import org.grails.plugin.resource.mapper.MapperPhase
import org.apache.commons.logging.LogFactory

class VersionResourceMapper {

    def phase = MapperPhase.MUTATION
    def log = LogFactory.getLog(this.class)

    static defaultIncludes = [ '/js/**' ]

    def map(resource, config) {
        def query = [v:'1.01']
        resource.actualUrl = resource.actualUrl + '?' + query.collect { it }.join('&')
        //resource.updateActualUrlFromProcessedFile()

        if (log.debugEnabled) log.debug "Modified URL: ${resource.actualUrl}"
        log.info "Modified URL: ${resource.actualUrl}"
    }
}
该文件位于grails app/resourceMappers中


我的班从来没有人打过电话。我有一个调试断点集,它永远不会被命中。是否需要设置其他配置?

我很确定您需要更改

def phase = MapperPhase.MUTATION

删除此行

静态defaultIncludes=['/js/**']

并检查是否命中了断点。看起来它只是没有找到js目录

如果可行,将上面的行更改为


静态defaultIncludes=['js/**']

不,这没有改变任何东西。调试断点仍然没有命中。您使用的是什么版本的grails和资源插件?很接近。我必须做“/css/”,“/js/”。我认为您的解决方案可以在生产中使用,但在开发中,资源附加了/static。
 static phase = MapperPhase.MUTATION