此语法可能尚未提供,但我要求避免冗余代码。现在我正在排除像这样的罐子
compile ('com.mygroup:myJar:0.1.1-M1-SNAPSHOT+') {
exclude group: 'org.apache.xmlgraphics'
exclude group:'org.apache.avalon.framework'
exclude group:'net.engio'
exclude group: 'com.google.guava'
}
如何在一行代码中排除多个组/模块,例如,此语法
compile ('com.mygroup:myJar:0.1.1-M1-SNAPSHOT+'){
exclude group: ['org.apache.xmlgraphics', 'org.apache.avalon.framework', 'net.engio', 'com.google.guava']
}
或者还有其他的短代码可以做同样的事情吗。
谢谢。
您可以这样做:
compile ('com.mygroup:myJar:0.1.1-M1-SNAPSHOT+'){
['org.apache.xmlgraphics', 'org.apache.avalon.framework', 'net.engio', 'com.google.guava'].each {
exclude group: it
}
}
请注意,这是在利用Groovy特性,而不是Gradle特性。
还要注意,我不认为include
在这种情况下是一件事(请参阅此处的方法摘要(。
compile ('com.mygroup:myJar:0.1.1-M1-SNAPSHOT+'){dep ->
['org.apache.xmlgraphics', 'org.apache.avalon.framework', 'net.engio', 'com.google.guava'].each {group -> dep.exclude group: group }
}
请参阅此。