如何从Maven存储库中的依赖项中排除特定的jars

时间:2020-11-01 11:16:01

标签: java maven nd4j

我想使用nd4j-cuda-10.2中的项目。它具有用于两个操作系统Linux和Windows的jar文件。比如何在使用Windows系统时从Linux中排除jar,反之亦然?

[Maven存储库] [1] [1]:https://repo1.maven.org/maven2/org/nd4j/nd4j-cuda-10.2/1.0.0-beta7/

由于jar文件的重量。我想排除对每个操作系统无用的文件。这可能吗?。

我的意思是,我希望Maven下载文件 “ nd4j-cuda-10.2-1.0.0-beta7-linux-ppc64le.jar ”仅在Linux系统上,并且文件“ nd4j-cuda-10.2-1.0.0” -beta7-windows-x86_64.jar ”(在系统Windows上)。

pom.xml的一部分:

     <profile>
            <id>Windows_Profile</id>
            <activation>
                <os>
                    <name>windows 10</name>
                    <family>Windows</family>
                    <arch>amd64</arch>
                </os>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.nd4j</groupId>
                    <artifactId>nd4j-cuda-10.2-platform</artifactId>
                    <version>${nd4j.version}</version>
                    <classifier></classifier>
                </dependency>
                <dependency>
                    <groupId>org.deeplearning4j</groupId>
                    <artifactId>deeplearning4j-cuda-10.2</artifactId>
                    <version>1.0.0-beta7</version>
                    <exclusions>
                        <exclusion>
                            <groupId></groupId>
                            <artifactId></artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
            </dependencies>
        </profile> 

我在每个操作系统的配置文件上都做了一些工作,因为我发现这样做是正确的方法,但这还不够,我在文件中附加了一些代码,感谢您的合作,任何贡献都是高度重视的。

1 个答案:

答案 0 :(得分:0)

检查是否存在可以引用的独立工件/ Maven依赖项。快速检查发现有类似https://mvnrepository.com/artifact/org.nd4j/jcuda-windows64的东西。