我有一个项目,我希望在某些环境中包含控制台插件,但不包括其他环境 - 它应该在(自定义)deployTest环境中,但不适用于生产。
如果我使用grails构建应用程序,我有一个看似如下的BuildConfig.groovy:
grails.project.dependency.resolution = {
/// some stuff
plugins {
/// more dependencies
if (Environment.current != Environment.PRODUCTION){
compile ":console:1.5.1"
}
}
}
使用Gradle构建Grails时,Grails的依赖性解析基于build.gradle文件,而不是BuildConfig.groovy。
我该如何做到这一点?
答案 0 :(得分:2)
对我而言,似乎更喜欢根据环境包含依赖关系。但是,这种方法无论哪种方式都是相同的。在build.gradle文件中,您有一个依赖关系'部分。由于这是Groovy,它是代码。 Gradle使用-PgrailsEnv值来指定环境。只需使用:
dependencies {
// if no property, then gradle will be default to prod. So test
// for that or having it explicitly provided
if (!project.hasProperty('grailsEnv') || project.grailsEnv.equals('prod')) {
compile ':console:1.5.1'
}
}