Maven私服基础使用

简介: Maven私服搭建

Maven

搭建Maven私服
  • 安装 Nexus 服务器
https://help.sonatype.com/repomanager3/product-information/download
上传并解压文件,解压后你可以看到目录 nexus-3.20.1-01-mac,在这个目录下有两个子目录 nexus-3.20.1-01 和 sonatype-work。nexus-3.20.1-01 是程序,sonatype-work 是工作目录,如果以后要备份数据,只要备份 sonatype-work 就行。
  • 配置环境变量/启动服务器/停止服务器
在配置有关环境变量之前,要启动 nexus 服务器,你需要打开命令终端,切换到 nexus-3.20.1-01-mac/nexus-3.20.1-01/bin 目录下,再执行启动命令
./nexus start  # 启动服务
./nexus status # 查看服务状态
默认端口号8081 可以在安装目录下/etc/nexus-default.properties中修改端口号
  • 仓库类型介绍

Repository -> Repositories 下是默认仓库

  1. maven-central :Type 为proxy,表示代理仓库,用来代理远程仓库--下载组件时,如果代理仓库搜不到,则把请求转发到远程仓库(默认 https://repo1.maven.org/maven2/ ,可以修改),并从远程仓库下载,然后将该组件缓存**到代理仓库,当再次请求该组件时,则直接到代理仓库下载,不会再次请求远程仓库;

修改默认仓库

推荐使用阿里云镜像(https://maven.aliyun.com/nexus/content/groups/public

  1. maven-releases/maven-snapshots:Type类型为hosted,表示宿主仓库,主要用来部署团队内部使用的内部组件,其中maven-releases用来部署团队内部的发布版组件,maven-snapshots用来部署团队内部的快照版组件。(一般正式版本放在releases,非正式版放在snapshots)
  2. maven-public:Type类型为group,表示分组仓库,默认将maven-central、maven-releases、maven-snapshots三个仓库组合在一起对外提供服务,简化了maven的配置
使用maven私服
  • 下载 ------修改本地maven配置

客户端修改maven安装目录下的settings.xml镜像配置

<mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <url>maven私服地址+maven库</url>  # https://127.0.0.1:8081/repository/maven-public
</mirror>
  • 上传------修改本地maven配置
  1. 修改本地maven配置文件
<server>
      <id>nexus</id>
      <username>用户名</username>
      <password>密码</password>
</server>
  1. 修改项目pom文件
<distributionManagement>
  <repository>
     <id>maven-public</id>
     <name>Nexus test</name>
     <url>http://私服地址:端口号/repository/test-hosted/</>url>
   </repository>
   <snapshotRepository>
     <id>maven-public</id>
     <name>Nexus test</name>
     <url>http://私服地址:端口号/repository/maven->snapshots/</url>
   </snapshotRepository>
 </distributionManagement>

说明:上面的ID必须和settings.xml配置中的server的id一致
maven项目创建时设置Version为1.0-SNAPSHOT后,deploy部署的时候会将包部署到快照仓库

  1. 执行mvn deploy命令即可将构建的包存储到本地maven仓库和远程maven私服仓库;

说明:mvn package、mvn install和mvn deploy区别

三个命令均可完成项目编译、单元测试、构建包(jar包、war包或者其他形式的包)功能,
mvn package  命令没有将包存储到本地maven仓库和远程maven私服仓库;
mvn install  命令将包存储到本地maven仓库,但没有存储到远程maven私服仓库;
mvn deploy   命令将包存储到本地maven仓库以及远程maven私服仓库  

默认不允许重复deploy发布,如果允许重复deploy则需要修改maven私服仓库配置 (修改为Allow redeploy)

修改pom文件上传到不同maven库

<groupId>com.test</groupId>
<artifactId>son</artifactId>
<version>1.0-SNAPSHOT</version>  # 修改version版本 RELEASE
使用jar包

在pom文件中添加依赖

<dependency>
      <groupId>com.test</groupId>
      <artifactId>son</artifactId>
      <version>1.0-SNAPSHOT</version>
</dependency>

相关文章
|
XML 存储 Java
Maven基础学习——依赖配置(1):配置同一项目下的三个工程
选择Maven后直接选择下一步(注意这里不需要进行任何操作,不用搜索quickstart,直接点击下一步即可)
190 0
Maven基础学习——依赖配置(1):配置同一项目下的三个工程
|
Java 应用服务中间件 Maven
Maven基础学习——tomcat插件配置(含web工程配置)
Maven基础学习——tomcat插件配置(含web工程配置)
1204 0
Maven基础学习——tomcat插件配置(含web工程配置)
|
IDE Java Apache
|
Java Maven 开发工具
maven基础篇(四)
maven基础篇
123 1
|
XML Java 应用服务中间件
maven基础篇(三)
maven基础篇
152 1
|
JavaScript Java Maven
|
存储 IDE Java
|
存储 JavaScript Java
Maven 基础
Maven 基础
118 0
Maven 基础
|
Java Linux Maven
Linux java基础环境搭建 ->nexus maven私服
Linux java基础环境搭建 ->nexus maven私服
103 0
|
Java Linux Maven
Linux java基础环境搭建 ->maven
Linux java基础环境搭建 ->maven
96 0

推荐镜像

更多