在Windows2008 R2 服务器上使用maven私有仓库

1 篇文章 0 订阅
1 篇文章 0 订阅

前言:

现在Java开发都是采用Maven工程方式,极大地方便了对jar包依赖的管理。简单的工程只需要在开发机安装本地Maven库就可以了,大型工程需要开发多个jar包时就需要搭建一个私有的团队公共的Maven库,开发人员通过私有库管理整个工程的jar包依赖。

如图:

1、下载nexus

官网链接:https://www.sonatype.com/download-oss-sonatype

选择Windwos下载

2、安装nexus

打开cmd控制台,执行:nexus.exe /install 安装服务。

查看nexus服务是否启动

3、用户登录

在浏览器上输入地址:http://127.0.0.1:8081/ 打开nexus管理页面

默认登录是游客身份:anonymous,可以查看仓库并下载依赖,但不能配置nexus

使用管理员身份登录,帐号:admin,密码:admin123

4、管理repository

一、nexus默认创建了几个仓库,如下,其中maven-aliyun和maven-third-party是手动添加的

repositorie有三种类型

group:是一个仓库组,可包含hosted和proxy两种库,下载时按配置顺序从中依次查找

hosted:内部库,部署内部项目的jar包,或第三方的私有的jar包

proxy:代理远程仓库,maven-central是默认maven中央仓库代理,通过代理从远程库中下载的依赖都会被缓存到proxy库中
 

二、创建阿里云代理库

默认的中央仓库代理maven-central连接的是国外的库,连接很慢,阿里云仓库是国内的库连接速度快,需要创建阿里云代理库

阿里云仓库地址为:http://maven.aliyun.com/nexus/content/groups/public

三、设置maven-public(maven本地库的mirror映像库)

作为maven本地库的mirror映像库既要管理公共jar包,又要能管理团队开发的jar包和第三方私有的jar包。

maven-public是group类型的库,可以包含中央库、本地库、第三方库的jar包,可以作为mirror映像库。

需要对其包含的仓库进行设置:

maven-releases  ----  本地发布库

maven-snapshots ----  本地snapshot库

maven-third-party ----  第三方库

marven-aliyun  ----  阿里云中央库

maven-central  ----  maven中央库

设置好检索顺序:上方的库先检索,下方的库后检索。

四、创建hosted和proxy库是需要指定Version policy:

release:专用于部署发布版本的jar

snapshot:专用于部署快照版本的jar,jar都是以-SNAPSHOT结尾,pom中version需以-SNAPSHOT(必须大写)结尾

mixed:可包含release和snapshot版本

五、创建hosted类型仓库时,需要将Deployment policy设为Allow redeploy,否则无法部署jar

 

5、创建可以发布jar包的角色和用户

一、创建角色:deployer,设置对maven-releases、maven-snapshots、maven-third-party库有发布权限

二、创建用户:deployer

6、防火墙设置

创建端口类型的入站规则:Maven私库,协议:TCP,端口:8081

7、settings.xml设置

  <!--设置私库认证信息-->
  <servers>
    <server>  
        <id>risen-release</id>  
        <username>deployer</username>  
        <password>deployer</password>  
    </server>  
    <server>  
        <id>risen-snapshot</id>  
        <username>deployer</username>  
        <password>deployer</password>  
    </server> 
  </servers>

  <mirrors>

    <!--设置私库的映像-->
    <mirror> 
      <id>risen</id> 
      <mirrorOf>*</mirrorOf> 
      <!-- <mirrorOf>central</mirrorOf>  -->
      <name>Risen Mirror.</name> 
      <url>http://192.168.2.156:8081/repository/maven-public/</url> 
    </mirror>
  </mirrors>

settings.xml的<server>的 id  需要与pom.xml的<distributionManagement>的设置一致

pom.xml设置

    <distributionManagement>
        <repository>
            <id>risen-release</id>
            <name>Release Repository</name>
            <url>http://192.168.2.156:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <id>risen-snapshot</id>
            <name>Snapshot Repository</name>
            <url>http://192.168.2.156:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值