maven分模块设计与私服

一、maven分模块设计

1、好处
  • 增强代码的复用性
  • 便于分工
  • 对 maven 项目来讲,一些通用的依赖、插件 ,可以抽取到父模块,简化配置
2、注意事项
xml 复制代码
<!--    父工程pom.xml中配置打包方式时选择pom方式,该模块不写java代码,仅进行项目管理配置-->
    <packaging>pom</packaging>
3、聚合

​ 在父模块pom.xml中使用module标签统一管理子模块叫做聚合。

​ 好处是通过父模块能够快速构建(清理、编译、打包)多个子模块。

4、继承

​ 描述的是两个工程间的关系,

​ 作用是简化依赖配置、统一管理依赖,

​ 实现:在子模块pom.xml中使用标签指定要继承的父模块

5、版本锁定
1、在父模块锁定版本
xml 复制代码
    <properties>
        <!--     自定义属性     -->
        <jjwt.version>0.9.1</jjwt.version>
    </properties>
<!--
    在父模块中的pom.xml中使用 dependencyManagement 标签定义要锁定版本的依赖坐标
    在子模块中定义依赖时,如果不指定就使用父模块的版本,如果指定了就用子模块中的
-->
<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <!--     引用属性     -->
                <version>${jjwt.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
2、在子模块中使用依赖
xml 复制代码
        <!--
            在父模块中的pom.xml中使用 dependencyManagement 标签定义要锁定版本的依赖坐标
            在子模块中定义依赖时,如果不指定就使用父模块的版本,如果指定了就用子模块中的
        -->
       <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
        </dependency>

二、私服Nexus

1、下载

官网下载

2、从私服下载jar
xml 复制代码
    <!--在pom.xml中配置从私服下载jar包的仓库组地址,注意:nexus开要开启允许匿名访问-->
    <repositories>
        <repository>
            <!--多个repository时,id唯一就行-->
            <id>nexus</id>
            <!--仓库组的url-->
            <url>http://http://192.168.69.60/:8081/repository/maven-public/</url>
        </repository>
    </repositories>
3、上传jar到私服
xml 复制代码
    <!--在pom.xml中配置上传jar包到私服的地址-->
    <distributionManagement>
        <!-- release版本的发布地址 -->
        <repository><!--此处的id要和server中的id一致,表示使用这组密码-->
            <id>maven-nexus</id>
            <url>http://192.168.69.60:8081/repository/maven-releases/</url>
        </repository>

        <!-- snapshot版本的发布地址 -->
        <snapshotRepository>
            <id>maven-nexus</id><!--此处的id要和server中的id一致,表示使用这组密码-->
            <url>http://192.168.69.60:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
xml 复制代码
 <!--在maven的settings.xml中的servers中配置 私服的访问用户名/密码-->
      <server>
          <id>maven-nexus</id>
          <username>admin</username>
          <password>123456</password>
      </server>

最后,在IDEA中双击 deploy 发布项目

相关推荐
阿乾之铭1 分钟前
Spring Boot框架中的IO
java·spring boot·log4j·1024程序员节
程序猿阿伟7 分钟前
《C++中的魔法:实现类似 Python 的装饰器模式》
java·c++·装饰器模式
Mr. zhihao9 分钟前
装饰器模式详解:动态扩展对象功能的优雅解决方案
java·开发语言·装饰器模式
2401_8576009516 分钟前
商场应急管理:SpringBoot技术解决方案
java·spring boot·后端
想做白天梦28 分钟前
多级反馈队列
java·windows·算法
潇雷30 分钟前
算法Day12|226-翻转二叉树;101-对称二叉树;104-二叉树最大深度;111-二叉树最小深度
java·算法·leetcode
一颗甜苞谷37 分钟前
开源一套基于若依的wms仓库管理系统,支持lodop和网页打印入库单、出库单的源码
java·开源
半夏之沫39 分钟前
✨最新金九银十✨大厂后端面经✨
java·后端·面试
计算机学姐1 小时前
基于uniapp微信小程序的餐厅预约点餐系统
java·spring boot·微信小程序·小程序·java-ee·uni-app·tomcat