码迷,mamicode.com
首页 > 其他好文 > 详细

06 Maven拆分、聚合项目

时间:2020-10-27 11:31:14      阅读:23      评论:0      收藏:0      [点我收藏+]

标签:modules   mars   project   loading   nap   工具   直接   目的   不同的   

maven拆分、聚合

一、概念

maven拆分思想:把一个完整的项目,分成不同的独立模块,这些模块都有各自独立的坐标。

maven聚合思想:那个地方需要使用其中某个模块,就直接引用该模块的坐标即可。可以拆分零散的模块聚合到一起编写一个完整的项目

为什么要拆分、聚合?

因为把可重用的代码进行创建一个项目,而不是一个重复的代码分布在各处,导致后期更改其中的代码到处找很麻烦。

二、案例说明

2.1、创建父子工程项目

技术图片

2.2、将maven坐标放置到父项目的pom文件中

这个是主项目的pom文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.itcast</groupId>
    <artifactId>day39_maven_parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <modules>
        <module>day39_maven_dao</module>
        <module>day39_maven_service</module>
        <module>day39_maven_web</module>
    </modules>
    <!--坐标省略-->
</project>

2.3、分别将项目之间的坐标添加到各项目中

将dao副项目坐标添加到servlet副项目中

<dependencies>
    <dependency>
        <groupId>com.itcast</groupId>
        <artifactId>day39_maven_dao</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

将servlet副项目坐标添加到web副项目中

<dependencies>
    <dependency>
        <groupId>com.itcast</groupId>
        <artifactId>day39_maven_service</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

这样项目之间就可以形成依赖关联了

2.4、运行项目

2.4.1、第一种方式

直接点击主项目的maven文件,因为在项目中添加的tomcat7依赖,所以在这里启动项目是可以的

技术图片

2.4.2、第二种方式

通过开发工具配置的本地服务器启动项目,不过这里要选择web副项目

技术图片

2.4.3、第三种方式

使用主项目的打包,并在web副项目从主项目中依赖的tomcat来运行

技术图片

技术图片

如果不适用上述操作,则会出现加载不到其他项目中的配置文件出现报错。

06 Maven拆分、聚合项目

标签:modules   mars   project   loading   nap   工具   直接   目的   不同的   

原文地址:https://www.cnblogs.com/xianbeier/p/13880758.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!