maven中如何配置多模块呢?

欢喜花生 Maven教程 发布时间:2025-04-30 09:51:26 阅读数:18611 1
下文笔者讲述maven中配置多模块的方法及示例分享,如下所示

maven配置多模块项目的实现思路

Maven中配置多模块项目
   通常需要一个 
       父项目(Parent Project)
	     和
   多个子模块(Modules)

maven多模块的项目结构

my-project/
├── pom.xml (父项目)
├── module-a/
│   └── pom.xml
├── module-b/
│   └── pom.xml
└── module-c/
    └── pom.xml

2.父项目`pom.xml`配置

<project>
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>my-project</artifactId>
    <version>1.0.0</version>
    <packaging>pom</packaging>

    <!-- 定义子模块 -->
    <modules>
        <module>module-a</module>
        <module>module-b</module>
        <module>module-c</module>
    </modules>

    <!-- 可选:统一管理依赖版本 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.13.2</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <!-- 可选:统一的插件配置 -->
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.1</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>

3.子模块`pom.xml`示例 (如`module-a/pom.xml`)
<project>
    <modelVersion>4.0.0</modelVersion>

    <!-- 父项目信息 -->
    <parent>
        <groupId>com.example</groupId>
        <artifactId>my-project</artifactId>
        <version>1.0.0</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <artifactId>module-a</artifactId>

    <dependencies>
        <!-- 可以引用其他模块 -->
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>module-b</artifactId>
            <version>1.0.0</version>
        </dependency>
    </dependencies>
</project>

4.常见命令操作

| 操作 | 命令 |
|------|------|
| 构建所有模块 | `mvn clean install` |
| 只构建某个模块及其依赖 | `mvn -pl module-a clean install` |
| 构建多个模块 | `mvn -pl module-a,module-b clean install` |
| 跳过测试构建 | `mvn clean install -DskipTests` |
 注意事项
- 所有模块的 `<packaging>` 必须为 `jar` 或 `war`,父项目一般为 `pom`。
- 模块之间可以互相依赖,但不能形成循环依赖。
- 推荐使用 IDE(如 IntelliJ IDEA)来管理模块关系和依赖。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/Maven/202504/8457.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者