maven高级

maven高级

分模块设计与开发

步骤

继承与聚合

继承关系实现

步骤

版本锁定

步骤

聚合实现

步骤

私服

步骤

验证


分模块设计与开发

注意事项

分模块开发需要先针对模块功能进行设计,再进行编码。不会先将工程开发完毕,然后进行拆分。

步骤

继承与聚合

继承关系实现

步骤

①创建maven模块 tlias-parent,该工程为父工程,设置打包方式pom。

XML 复制代码
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <groupId>com.itheima</groupId>
    <artifactId>tlias-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

②.在子工程的pom.xml文件中,配置继承关系。

XML 复制代码
    <artifactId>tlias-pojo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>com.itheima</groupId>
        <artifactId>tlias-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../tlias-parent/pom.xml</relativePath>
    </parent>

③.在父工程中配置各个工程共有的依赖(子工程会自动继承父工程的依赖

XML 复制代码
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lombok.version}</version>

        </dependency>

版本锁定

步骤

在maven中,可以在父工程的pom文件中通过<dependencyManagement>来统一管理依赖版本。

子工程引入依赖时,无需指定<version〉版本号,父工程统一管理。变更依赖版本,只需在父工程中统一变更。

XML 复制代码
    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>

        <lombok.version>1.18.24</lombok.version>
        <jjwt.version>0.9.1</jjwt.version>
        <aliyun.oss.version>3.17.4</aliyun.oss.version>
        <jaxb.version>2.3.1</jaxb.version>
        <activation.version>1.1.1</activation.version>
        <jaxb.runtime.version>2.3.3</jaxb.runtime.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lombok.version}</version>

        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <version>${jjwt.version}</version>
            </dependency>

            <dependency>
                <groupId>com.aliyun.oss</groupId>
                <artifactId>aliyun-sdk-oss</artifactId>
                <version>${aliyun.oss.version}</version>
            </dependency>

            <dependency>
                <groupId>javax.xml.bind</groupId>
                <artifactId>jaxb-api</artifactId>
                <version>    ${jaxb.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.activation</groupId>
                <artifactId>activation</artifactId>
                <version>${activation.version}</version>
            </dependency>
            <!-- no more than 2.3.3-->
            <dependency>
                <groupId>org.glassfish.jaxb</groupId>
                <artifactId>jaxb-runtime</artifactId>
                <version>    ${jaxb.runtime.version}</version>
            </dependency>


        </dependencies>
    </dependencyManagement>

聚合实现

步骤

maven中可以通过<modules>设置当前聚合工程所包含的子模块名称

XML 复制代码
    <!--聚合其他模块-->
<modules>
    <module>../tlias-pojo</module>
    <module>../tlias-utils</module>
    <module>../tlias-web-management</module>
</modules>

聚合工程中所包含的模块,在构建时,会自动根据模块间的依赖关系设置构建顺序,与聚合工程中模块的配置书写位置无关。

私服

步骤

验证

引入tlias-utils依赖

相关推荐
天天打码12 分钟前
ThinkPHP项目如何关闭runtime下Log日志文件记录
android·java·javascript
魔道不误砍柴功19 分钟前
Java 中反射的高级用法:窥探 Java 世界的魔法之门
java·开发语言·python
P7进阶路30 分钟前
实现用户登录系统的前后端开发
java
2401_8576176230 分钟前
“无缝购物体验”:跨平台网上购物商城的设计与实现
java·开发语言·前端·安全·架构·php
事业运财运爆棚33 分钟前
7种server的服务器处理结构模型
java·linux·服务器
西岭千秋雪_1 小时前
设计模式の中介者&发布订阅&备忘录模式
java·观察者模式·设计模式·中介者模式·备忘录模式
憶巷1 小时前
MyBatis中动态SQL执行原理
java·sql·mybatis
重生之绝世牛码1 小时前
Java设计模式 —— 【结构型模式】享元模式(Flyweight Pattern) 详解
java·大数据·开发语言·设计模式·享元模式·设计原则
seasugar1 小时前
记一次Maven拉不了包的问题
java·maven
Allen Bright1 小时前
【Java基础-26.1】Java中的方法重载与方法重写:区别与使用场景
java·开发语言