列出仅使用的罐子

时间:2015-12-14 14:11:10

标签: maven maven-2 maven-3

我有可以使用这些依赖项构建的Maven项目:

        <dependency>
            <groupId>org.wildfly.arquillian</groupId>
            <artifactId>wildfly-arquillian-container-embedded</artifactId>
            <version>1.0.2.Final</version>
        </dependency>
        <dependency>
            <groupId>org.wildfly</groupId>
            <artifactId>wildfly-embedded</artifactId>
            <version>9.0.2.Final</version>
        </dependency>

这些依赖项中有很多jar,我想在必要时使用。我如何列出构建仅需要哪些罐子?

1 个答案:

答案 0 :(得分:1)

对你的简单回答是,没有简单的方法来做你要求的事。在maven中,你为你的包声明了包中的代码在所有场景中都需要的所有依赖项。在这种情况下,如果您仅使用wildfly嵌入式软件包的特定部分,并且您使用的那个部分仅取决于软件包的声明依赖项的子集,那么Maven无法知道这一点。

您可以采取的一种方法是简单地查看这些工件的声明的依赖项,排除其中一个,然后运行您的测试套件。假设您有一个全面的测试套件,如果测试过去那么您可以合理地假设您使用的库的任何部分都不需要您排除的依赖关系。您可以为每个声明的依赖项执行此操作。