`

Maven的多模块(Multi-Module)工程的pom编写

阅读更多

对于使用maven的骨架创建工程,想必大家都已经熟悉了,这里是一些常用的工程类型,如想看到更多的骨架可以使用mvn的交互式Interactive generate Goal创建指令:mvn archetype:generate


// Creating a simple java application
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id]

// Creating a webapp
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-webapp

// Creating a site
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-site-simple

// Creating a mojo
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-mojo

// Creating a portlet
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-portlet

 

现在想介绍的是多模块的工程的构建。

 

典型的多模块划分,即按MVC的分层方式来构建多个模块,如工程包括web,business,core3个模块。好我们先看看主工程的pom中应添加些什么,请注意红色文字部分


1.主工程的pom文件中内容:

 

    <modelVersion>4.0.0</modelVersion>
    <groupId>com.your-company.xxxx</groupId>
    <artifactId>xxxx</artifactId>
    <packaging>pom</packaging>
    <version>1.0</version>
    <name>xxxx Project</name>
    <url>http://maven.apache.org</url>

 

    <!-- 工程所包含的模块 -->

    <modules>
        <module>xxxx-core</module>
        <module>xxxx-business</module>
        <module>xxxx-web</module>
    </modules>

 

2.Web模块的pom文件:

 

    <!-- 父级的pom文件位置 -->

    <parent>
        <groupId>com.your-company.xxxx</groupId>
        <artifactId>xxxx</artifactId>
        <version>1.0</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

 

    <groupId>com.your-company.xxxx</groupId>
    <artifactId>xxxx-web</artifactId>
    <packaging>war</packaging>
    <version>1.0</version>
    <name>xxxx-web/name>
    <url>http://maven.apache.org</url>

 

    <dependencies>
        <!-- Application Dependencies -->
        <!-- Web层所依赖的上两层模块 -->

        <dependency>
            <groupId>com.your-company.xxxx</groupId>
            <artifactId>xxxx-core</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>com.your-company.xxxx</groupId>
            <artifactId>xxxx-business</artifactId>
            <version>${version}</version>
        </dependency>

        ...

    <dependencies>


3.完成后,mvn eclipse:eclipse后的文件目录为:

 

xxxx

├─xxxx-core

│  ├─pom.xml
│  ├─.settings
│  ├─src
│  │  ├─main
│  │  │  ├─java
│  │  │  └─resources
│  │  └─test
│  │      ├─java
│  │      └─resources
│  └─target
│      ├─classes
│      └─test-classes

├─xxxx-business
│  ├─pom.xml
│  ├─.settings
│  ├─src
│  │  ├─main
│  │  │  ├─java
│  │  │  └─resources
│  │  └─test
│  │      ├─java
│  │      └─resources
│  └─target
│      ├─classes
│      └─test-classes

├─xxxx-web

│  ├─pom.xml
│  ├─.settings
│  ├─src
│  │  ├─main
│  │  │  ├─java
│  │  │  └─resources
│  │  └─test
│  │      ├─java
│  │      └─resources
│  └─target
│      ├─classes
│      └─test-classes

|--pox.xml

 

 

分享到:
评论

相关推荐

    spring-boot-maven-multi-module-n-layered

    1-)从父pom.xml构建Maven子模块 D:\ DEV \ IntelliJProjects \ spring-boot-maven-multi-module-n-layered&gt; 。\ mvnw.cmd全新安装 [INFO] ----------------------------------------------- --------------------...

    maven多模块项目工程-已搭建好

    在Eclipse中,你可以通过“New -&gt; Maven Project”创建新的Maven项目,并选择“Create a simple project”或“Create a multi-module project”来构建多模块工程。 3. **依赖管理**:在"xd-parent"的`pom.xml`中,...

    multi-module-serve

    在Java开发领域,多模块(Multi-Module)项目是一个常见的组织方式,特别是在大型或复杂的后端应用中。这种结构能够帮助我们更好地管理代码,提高代码的可读性和可维护性。"multi-module-serve"标题暗示了我们正在...

    maven-new-multi-module-project

    "maven-new-multi-module-project"这个项目标题表明我们正在讨论一个使用Maven构建的多模块项目。多模块项目是大型Java应用程序中常见的一种组织结构,它允许我们将复杂的系统分解为更小、更易于管理的部分。下面将...

    maven多模块项目(简单实例)

    在大型项目中,通常会采用多模块(Multi-Module)的方式来组织代码,以实现更好的模块化、复用性和可维护性。本实例将详细介绍如何创建和管理一个简单的Maven多模块项目。 首先,我们要理解Maven的模块关系。在...

    Multi-module-project

    在Java开发领域,多模块项目(Multi-module project)是一种常见的组织大型代码库的方式。这种方式将一个复杂的项目分解成多个相互依赖的小模块,每个模块专注于特定的功能或子系统,从而提高代码的可读性、可维护性...

    eclipse 创建多模块maven项目

    - 填写子模块的基本信息,如“GroupId”、“ArtifactId”(例如:multi-module-impl)等,并确保“Parent POM”选择了之前创建的父模块。 - 点击“Finish”完成创建。 **创建接口模块** 接口模块通常用于定义公共...

    spring-hibernate-maven-multi-module:Spring MVC(JavaConfig 和 XML Config)项目与 Hibernate 使用 Maven 多模块

    该项目名为“spring-hibernate-maven-multi-module”,是一个利用Spring MVC、Hibernate框架,并通过Maven进行构建的多模块Java应用。这个项目旨在展示如何在大型应用中有效地组织代码,利用Maven的多模块特性来实现...

    【maven】多子模块maven模板工程archetype创建过程

    【maven】多子模块maven模板工程archetype创建过程 在软件开发中,Maven作为Java项目管理和构建工具,提供了强大的依赖管理功能。而Maven的Archetype插件则可以帮助开发者快速创建新项目的模板,尤其对于有多个子...

    maven-module-multiple:Maven 多模块存根

    Maven多模块项目(Multi-module Maven Project)是Maven项目的一种组织形式,允许开发者将一个大的项目分解成多个独立的模块,每个模块负责一个特定的功能或者子系统。这样做有以下好处: 1. **代码结构清晰**:...

    mvn-examples-1.0&Maven;权威指南中文版

    &lt;module&gt;ch09-pom&lt;/module&gt; &lt;module&gt;ch10-lifecycle&lt;/module&gt; &lt;module&gt;ch11-profile&lt;/module&gt; &lt;module&gt;ch12-assembly&lt;/module&gt; &lt;module&gt;ch13-properties&lt;/module&gt; &lt;module&gt;ch15-sitegen&lt;/module&gt; &lt;module&gt;ch...

    Multi-Module-Maven

    `Multi-Module-Maven` 是一个典型的Java项目结构,它利用Maven的多模块功能来组织大型项目。Maven是Java开发中的一个构建工具,它通过配置文件(pom.xml)来管理项目的依赖、构建过程以及打包规则。在大型项目中,将...

    maven多模块项目+jetty热部署实例源码

    在大型项目中,通常会采用多模块(Multi-Module)结构来组织代码,使得项目更易于管理和维护。在Maven中,一个父项目(Parent POM)可以包含多个子模块(Child Modules),每个子模块都有自己的独立POM文件,这些POM...

    multi-module-sample:演示如何标记 Maven 多模块项目的每个模块

    使用 maven-release-plugin 和 maven-scm-plugin 标记多模块项目的所有子模块基本原理在我们公司,我们有一个政策,假设标记在 subversion 中是一种廉价的操作,那么每个发布的工件都应该在 Subversion 中具有一个...

     IDEA下创建多模块maven项目1

    这个项目由一个主工程`multi-module-Project`构成,它包含了两个子模块:`web-app`和`web-service`。 1. **项目结构**: - `multi-module-Project`:这是父工程,主要负责组织管理各个子模块。 - `web-app`:应用...

    Maven多模块web应用实例

    8. **多环境配置(Multi-Profile Configuration)**:通过Maven的profile机制,我们可以为不同的部署环境(如开发、测试、生产)定义不同的配置,如数据库连接信息、服务器端口等。 9. **持续集成(CI/CD)**:在实际...

    apache-maven-3.5.0 附源码

    6. **多模块项目 (Multi-module Projects)**: Maven支持多模块项目结构,一个父POM可以管理多个子模块,便于大型项目的构建和依赖管理。 7. **Maven仓库**: Maven使用本地仓库存储已下载的依赖,同时连接到远程仓库...

    springboot-multimodule-maven

    本文将以"springboot-multimodule-maven"为例,深入探讨Spring Boot结合Maven实现多模块项目的方法和最佳实践。 首先,"springboot-multimodule-maven"项目是一个基于Maven的Spring Boot多模块模板。Maven作为Java...

    springboott创建maven多模块项目1

    在Spring Boot中,创建一个Maven多模块项目可以帮助我们更好地组织和管理代码,尤其是当项目变得庞大时。本文将详细讲解如何使用Spring Initializr来构建一个包含多个子模块的Spring Boot项目。 首先,我们需要理解...

    maven-multi-modules:使用Maven处理多个Java模块架构

    本篇将深入探讨"Maven多模块"这一主题,了解如何使用Maven来管理并构建多个Java模块架构。 首先,我们需要理解Maven的基本概念。Maven是Apache软件基金会开发的一个项目管理工具,它通过使用一个项目对象模型...

Global site tag (gtag.js) - Google Analytics