使用Gradle构建fat jar时如何让子jar包中的META-INF文件夹不被打入?

9

有没有办法在Gradle的fat jar中排除某些路径。

我正在使用:

jar {
    from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}

来自 http://docs.codehaus.org/display/GRADLE/Cookbook,如果可能的话,我想要忽略META-INF目录。

谢谢! Misha

2个回答

15

我没有进行详细测试,但这应该能够实现你的需求:

jar {
    from configurations.compile.collect {
        it.isDirectory() ? it : zipTree(it).matching{exclude{it.name == 'META-INF'}}
    }
}

8
是的,上面TheKaptain的方法是可行的,只需将: it.name == 'META-INF' 改为: it.path.contains('META-INF').

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接