Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails 外部化test.datasource的配置_Grails - Fatal编程技术网

Grails 外部化test.datasource的配置

Grails 外部化test.datasource的配置,grails,Grails,通过更新config.groovy中的grails.config.locations,然后在.grails/${appName}-config.properties中设置特定配置,我已经能够将开发环境的数据源配置外部化,如下所示: dataSource.driverClassName = com.mysql.jdbc.Driver dataSource.url = jdbc:mysql://localhost/db-dev dataSource.username = root dataSourc

通过更新config.groovy中的grails.config.locations,然后在.grails/${appName}-config.properties中设置特定配置,我已经能够将开发环境的数据源配置外部化,如下所示:

dataSource.driverClassName = com.mysql.jdbc.Driver
dataSource.url = jdbc:mysql://localhost/db-dev
dataSource.username = root
dataSource.password = pass
对于“测试”环境,我有不同的数据库,因此我希望相应地更新test.dataSource.url,但这不起作用。在运行“grails测试”模式(即grails测试dgm更新)时,它仍然使用“dev”dataSource.url。如何外部化测试环境数据源配置


感谢您帮助

尝试使用Groovy外部配置,即“.grails/${appName}-config.Groovy”与特定于环境的DSL:

environments {
    test {
        dataSource {
            ...
        }
    }
}
然后为每个环境放置嵌套文件:

/home/me/.grails/myapp-config-dev.properties
/home/me/.grails/myapp-config-test.properties
/home/me/.grails/myapp-config-production.properties

谢谢你,谢尔盖。奇怪的是,在我的windows机器上.grails/${appName}-config.groovy配置不起作用。自从.grails/${appName}-config.properties起作用以来,我就没有花时间进行研究了……只是要注意,对于grails 2.1.1来说,它是“开发”而不是“开发”
/home/me/.grails/myapp-config-dev.properties
/home/me/.grails/myapp-config-test.properties
/home/me/.grails/myapp-config-production.properties