gradle删除捆绑的胖子罐依赖项

时间:2020-01-22 21:47:28

标签: java gradle dependencies shadowjar fatjar

我想删除捆绑在一个mutli-project构建的胖罐依赖项中的依赖项

so在模块中 A

依赖

<!-- https://mvnrepository.com/artifact/org.datasyslab/geospark -->
<dependency>
    <groupId>org.datasyslab</groupId>
    <artifactId>geospark</artifactId>
    <version>1.2.0</version>
</dependency>

a

jar -tf /Users/geoheil/Downloads/geospark-1.2.0.jar |grep geotools产生许多结果:

...
org/geotools/data/memory/MemoryFeatureSource.class
org/geotools/data/memory/MemoryFeatureCollection.class
org/geotools/data/memory/MemoryFeatureCollection$MemoryIterator.class
org/geotools/data/memory/MemoryDataStore$1.class
...
找到

个类。 如何删除它们?

以便当B在构建中包含A时,传递依赖项不再泄漏:

shadowJar {
    dependencies {
        // https://github.com/DataSystemsLab/GeoSpark/issues/410
        // geospark bundles geotools
        //
        exclude(dependency("org.geotools:*"))
    }
}

但是,不能解决它。

0 个答案:

没有答案