2017-07-26 25 views
1

我想从config.grooy属性设置依赖版本。我发现了一个最好的方法来做到这一点:pritomkumar.blogspot。这是建议的解决方案:如何访问BuildConfig for grails 2.3.2的配置属性

,在 'BuildConfig.groovy' 文件中以下行

def directory = new File(getClass().protectionDomain.codeSource.location.path).parent; 
def config = new ConfigSlurper(grailsSettings.grailsEnv).parse(new File(directory + File.separator + "Config.groovy").toURI().toURL()) 
println "| Tomcat Version (API): " + config.grails.tomcat.version; 
....  
plugins { 
    runtime ":hibernate:2.2.4" 
    runtime ":jquery:1.8.3" 
    runtime ":resources:1.2" 

    // Uncomment these (or add new ones) to enable additional resources capabilities 
    //runtime ":zipped-resources:1.0" 
    //runtime ":cached-resources:1.0" 
    //runtime ":yui-minify-resources:0.1.5" 

    build ":tomcat:"+config.grails.tomcat.version 

    runtime ":database-migration:1.3.2" 

    compile ':cache:1.0.1' 
} 

,在 'Config.groovy中'

grails.tomcat.version = "2.2.4" 
以下行

但它看起来适用于较老的grails版本,因为我得到了这个错误当我尝试刷新依赖条件:

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: 
script15010760392501179421923.groovy: 1: unable to resolve class com.whatever.configuration.ConfigurationFilesManager 
@ line 1, column 1. 
    import com.whatever.configuration.ConfigurationFilesManager 
^

1 error 

    at BuildConfig.run(BuildConfig.groovy:17) 
    at grails.util.BuildSettings.loadConfig(BuildSettings.groovy:1087) 
    at grails.util.BuildSettings.loadConfig(BuildSettings.groovy) 
    at grails.util.BuildSettings.loadConfig(BuildSettings.groovy:1073) 
    at grails.util.BuildSettings.loadConfig(BuildSettings.groovy) 
    at grails.util.BuildSettings$loadConfig$0.callCurrent(Unknown Source) 
    at grails.util.BuildSettings.loadConfig(BuildSettings.groovy:1053) 

|错误发生错误加载BuildConfig:启动失败: script15010760392501179421923.groovy:1:无法解析类com.whatever.configuration.ConfigurationFilesManager @ 1行,第1列 进口com.whatever.configuration.ConfigurationFilesManager

任何帮助?提前致谢。

回答

0

您可以检查 Grails use config.properties value into BuildConfig.groovy

只需更换config.properties到config.goorvy 然后你可以在BuildConfig 的配置值2.5.6

测试,但如果我们定义在配置一个配置.groovy作为如 `tomcatVersion = “2.2.4”

建 “:tomcat的:$ slurp.tomcatVersion” 将变成 “:tomcat的:”2.2.4“” 它不符合格式

你可以使用另一种表现像
compile group: 'org.grails', name: 'tomcat', version: $slurp.tomcatVersion