0
<project (...)>
    <modelVersion>4.0.0</modelVersion>

    <groupId>our.group.id</groupId>
    <artifactId>parent.of.all</artifactId>
    <version>3.2.2-SNAPSHOT</version>
    <packaging>pom</packaging>
    <url>http://maven.apache.org</url>

    <modules>
        <module>module-common</module>
        <module>module-A</module>
        <module>module-B</module>
        <module>module-C</module>
    </modules>

    <dependencyManagement>
        <dependencies>
            <dependency>
                (... - some external dependecies...)
            </dependency>
            <dependency>
                (... - some external dependecies...)
            </dependency>
            <dependency>
                (... - some external dependecies...)
            </dependency>

            <dependency>
                <groupId>our.group.id</groupId>
                <artifactId>module-common</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>our.group.id</groupId>
                <artifactId>module-A</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>our.group.id</groupId>
                <artifactId>module-B</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>our.group.id</groupId>
                <artifactId>module-C</artifactId>
                <version>${project.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>

这是项目的主要 pom,它包含在一些模块module-common module-A module-B module-C中。

我面临的问题是,由于模块之间的内部依赖关系,它们中的大多数都被 bing 编译和测试了多次:

<project (...)>
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>our.group.id</groupId>
        <artifactId>parent.of.all</artifactId>
        <version>3.2.2-SNAPSHOT</version>
    </parent>

    <artifactId>module-B</artifactId>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            (... - some external dependecies...)
        </dependency>

        <dependency> <!-- internal dependency to other module -->
            <groupId>our.group.id</groupId>
            <artifactId>module-common</artifactId>
        </dependency>
    </dependencies>
</project>

依赖项越多,构建项目所需的时间就越长。如何防止 maven 在同一模块上进行多次完整安装?

4

0 回答 0