这个语法可能尚未提供,但我要求避免冗余代码。 现在我要排除像这样的罐子
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']
}
或者是否有其他短代码可以做同样的事情。
谢谢。
答案 0 :(得分:5)
你可以这样做:
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
在此上下文中是一件事(请参阅方法摘要here)。
答案 1 :(得分:0)
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 }
}
请参阅this。