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依赖

相关推荐
何苏三月8 分钟前
设计模式 - 单例模式(懒汉式、饿汉式、静态内部类、枚举)
java·单例模式
Renas_TJOvO11 分钟前
排序算法汇总
java·数据结构·算法
秋恬意22 分钟前
Java 反射机制详解
java·开发语言
爱上语文29 分钟前
LeetCode每日一题
java·算法·leetcode
ღ᭄ꦿ࿐Never say never꧂38 分钟前
重生之我在Java世界------学工厂设计模式
java·设计模式·简单工厂模式·应用场景
尘浮生1 小时前
Java项目实战II基于Spring Boot的火锅店管理系统设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·微信小程序·旅游
wrx繁星点点1 小时前
桥接模式:解耦抽象与实现的利器
android·java·开发语言·jvm·spring cloud·intellij-idea·桥接模式
羊小猪~~1 小时前
C/C++语言基础--C++模板与元编程系列二类模板、全特化、偏特化、编译模型简介、实现简单Vetctor等…………)
java·c语言·开发语言·c++·visual studio code·visual studio
l138494274511 小时前
C语言储存变量 java循环语句和循环跳转
java·c语言·开发语言·算法
码农白衣2 小时前
后端Java学习:springboot之文件上传(阿里云OSS存储)
spring boot·学习·阿里云