07-maven高级-聚合

Maven聚合(Aggregation)是指在一个Maven项目中将多个独立的子模块组合在一起形成一个大的项目。聚合允许在一个父项目中同时构建和管理多个相关的子项目。

使用Maven聚合有以下几个方面的好处:

  1. 项目结构清晰:聚合允许你将一个大型项目分解为多个小的子模块,每个子模块专注于特定的功能或组件。这样可以使整个项目结构更清晰、易于理解和维护。
  2. 依赖管理简化:聚合通过定义父项目和子项目之间的依赖关系,可以简化依赖管理。父项目可以统一管理所有子项目的依赖,确保它们使用相同的版本和配置,减少配置的重复性。
  3. 构建的灵活性:使用Maven聚合,你可以在父项目上执行构建命令,自动构建包括所有子模块在内的整个项目。这样可以简化构建过程,提高开发效率。

下面是一个简单的示例:

"myproject"的项目包含两个子模块:"core"和"webapp"。

项目结构如下所示:

myproject/
  |- core/
  |   |- src/
  |   |- pom.xml
  |
  |- webapp/
  |   |- src/
  |   |- pom.xml
  |
  |- pom.xml (根目录的POM文件)

在根目录的POM文件中,定义所有子模块。

<project>
  ...
  <groupId>com.gy</groupId>
  <artifactId>myproject</artifactId>
  <version>1.0.0</version>
  <packaging>pom</packaging>
  
  <modules>
    <module>core</module>
    <module>webapp</module>
  </modules>
  ...
</project>

在每个子模块的POM文件中,定义各自的依赖和构建配置。
核心模块的POM文件示例:

<project>
  ...
  <parent>
    <groupId>com.example</groupId>
    <artifactId>myproject</artifactId>
    <version>1.0.0</version>
  </parent>
  
  <groupId>com.example</groupId>
  <artifactId>core</artifactId>
  <version>1.0.0</version>
  <packaging>jar</packaging>
  
  ...
</project>

Web应用模块的POM文件示例:

<project>
  ...
  <parent>
    <groupId>com.example</groupId>
    <artifactId>myproject</artifactId>
    <version>1.0.0</version>
  </parent>
  
  <groupId>com.example</groupId>
  <artifactId>webapp</artifactId>
  <version>1.0.0</version>
  <packaging>war</packaging>
  
  <dependencies>
    <dependency>
      <groupId>com.example</groupId>
      <artifactId>core</artifactId>
      <version>1.0.0</version>
    </dependency>
  </dependencies>
  
  ...
</project>

在这个示例中,父项目"myproject"通过<modules>标签列出了所有子模块。每个子模块通过<parent>标签指定了父项目,并可以定义自己的依赖和构建配置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.[今日课程内容总览] Maven--***** 介绍 优点 用maven创建一个项目, 用maven创建一个ssm项目,每一层的代码分开,把一个项目拆解成多个项目 2.[今日包含笔记] maven介绍: Eclise: 缺点: Jar包: 版本管理,解决jar包冲突:删除老的jar包,保留新的jar包 不同的项目,jar包要复制一份;Users Library 羡慕yum的好处,安装软件,自动下载,自动验证,自动安装,自动测试;镜像网站 Jar包的依赖: 致命的缺点:现象: 每一个项目都有前台(广大网民)和后台(管理员看的),后台的功能远远的大于>前台的功能;迭代升级;每次升级都要重启tomcat;将tomcat做很多个备份(10个),为了nginx转发;前台:访问比较大,管理员访问量比较小; 问题: 每次升级,10个tomcat都升级一次 后台的升级频繁要比前台频繁;升级10次,9次改的是后台的代码,只有一次是前台的代码 解决方案: 是将前台(广大网民看的页面)的代码和后台(管理员)的代码要分开,将原来的一个项目分别放到两个web项目;一个web项目一个tomcat;好处:更新的时候如果更新后台(管理员),只需要重启后台的tomcat(服务); 折成两个项目以后的缺点:Service以下的代码重复; 将Service层以下的代码放到一个新创建的java项目中,在部署的时候将Service(java项目)打成一个jar包,分别放到两个web服务中;编译的时候让web项目依赖与Service(java项目)_source folder;配置麻烦,项目与项目之间的依赖头脑得相当清晰 这个缺点Maven解决了; 请听今天的内容 拆分前:图一 拆分后是图二 3. 介绍 官网:http://maven.apache.org/download.cgi 目录介绍: Bin:二进制文件 Boot:引导,启动 Conf:配置文件 Lib:jar包 README.txt:读我 3.1.修改配置文件的内容 路径:%MAVEN_HOME%\conf\settings.xml 配置文件代码: d:/repo alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central 注意: 千万不要将文档中的setting的内容全部替换到maven中的内容,要对比着修改,保留原来的; 只修改本地仓库,和下载镜像(源) 3.2.Eclipse Maven的配置 每打开一个新的工作空间,要配置一下Maven,然后再写代码 3.3.创建Maven项目 右击创建一个maven project Packing:有三种: Jar:java项目, War:web项目 Pom:文件夹,jar和war文件,mavenProject:一个项目,可以放jar和war包,通过pom,一般新创建的maven Project是POM 3.4.创建一个Maven Model 最外面的项目是MavenProject,其它的全部是Maven Model 3.4.1.创建JAR 目录介绍: Mvn-jar |-->Src:源码:java代码 |-->|-->main:代码:除测试以外的代码:junit |-->|-->main|-->java:代码 |-->|-->main|--

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值