zoukankan      html  css  js  c++  java
  • nexus 的使用及maven的配置

    一、nexus的安装

    1.下载nexus(点解这里)

    2.下载后解压文件,将解压后的nexus文件放在你自己想要的地方

    3.配置环境变量(和配置java的环境变量一样)

    4.安装和启动nexus

    由于我已经安装和启动过nexus,所以有错误信息提示

    5.启动成功后,在浏览器输入http://localhost:8081/nexus/就会进入nexus的操作界面

    我们也可以在conf/nexus.properties修改端口

    6.用admin登录成功后,可以看到如下界面

    我们可以看见type有多重类型,这里我们介绍三种:

    • hosted,本地仓库(也叫宿主仓库),通常我们会部署自己的构件到这一类型的仓库或则是第三方的包(如:oracel的)。
    • proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。
    • group,仓库组,用来合并多个hosted/proxy仓库,通常我们配置maven依赖仓库组。

    二、使用nexus的管理界面上传jar包

    三、创建自己的私有仓库

     

    四、创建权限

    五、创建角色

    五、创建用户

    六、关联自己的私有仓库

    1.在settings.xml文件中添加镜像文件关联

      <mirrors>
        <mirror>     
          <id>nexus-releases</id>     
          <mirrorOf>*</mirrorOf>     
          <url>http://localhost:8081/nexus/content/groups/public</url>     
        </mirror> 
         <mirror>     
           <id>nexus-snapshots</id>     
          <mirrorOf>*</mirrorOf>     
           <url>http://localhost:8081/nexus/content/repositories/apache-snapshots/</url>     
         </mirror> 
      </mirrors>

    2.在settings.xml文件中设置profile

      </profiles>    
        <profile>  
            <id>nexusTest</id>  
            <repositories>  
              <repository>  
                <id>local-nexus</id>  
                <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>  
                <releases>  
                  <enabled>true</enabled>  
                </releases>  
                <snapshots>  
                  <enabled>true</enabled>  
                </snapshots>  
              </repository>  
            </repositories>  
          </profile>  
      </profiles>


      <activeProfiles> <!--激活id为nexusTest的profile-->
        <activeProfile>nexusTest</activeProfile>
      </activeProfiles>

    七、发布自己的快照版本到私有仓库

    这里我们测试将的nexusTest.jar发布到myRepository仓库中

    1.在pom.xml中添加

    <distributionManagement>
            <!--自己创建的库-->
           <repository>
                <id>myReposioryT</id><!--这里的id与角色中配置的id要一致-->
                <name>my test reposiory</name>
                <url> http://localhost:8081/nexus/content/repositories/myRepository</url>
            </repository>
            <!--snapshots库-->
            <snapshotRepository>
                <id>nexus-snapshots</id>
                <name>Nexus Snapshot Repository</name>
                <url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url>
            </snapshotRepository>
          <!--<repository>
                <id>nexus-releases</id>
                <name>Nexus Release Repository</name>
                <url>http://127.0.0.1:8081/nexus/content/repositories/releases/</url>
            </repository>
           -->
        </distributionManagement>

    1.在settings.xml文件中添加

        <servers>  
             <server>  
                <id>myReposioryT</id> <!-- 这里的id要与pom.xml中的一致  表示使用该账号上传jar到自己建立的my test reposiory仓库中-->
                <username>testAdmin</username>  
                <password>123456</password>  
              </server>  
          <server>  
            <id>nexus-releases</id>  
            <username>admin</username>  
            <password>admin123</password>  
          </server>  
          <server>  
            <id>nexus-snapshots</id>  
            <username>admin</username>  
            <password>admin123</password>  
          </server>     
        </servers>  

    使用maven的package deploy 命令就可以将自己的项目打成jar包发布到自己的私有仓库。

    注意,要发布jar包,需要将修改 <packaging>war</packaging>为 <packaging>jar</packaging>

    附录:

    1.如果使用idea,则有很好的工具帮我们操作

     2.如果我们版本号后面有后最SNAPSHOT,如<version>1.1-SNAPSHOT</version>

        我们即使是发布到release版本,nexus还是会自动认为是snapshot版本。处理的方式有两种。

      2.1直接去掉版本号后面的SNAPSHOT后缀,如:<version>1.1</version>

      2.2使用如下配置

    //头部版本号的配置 
    <version>${project.release.version}</version>
    
    //添加properties
      <properties>
            <project.release.version>1.1-SNAPSHOT</project.release.version>
        </properties>
    
     <profiles>
            <profile>
                <id>myRelease</id>  <!--id自己随便取 使用mvn命令发布的时候要使用到这个id-->
                <properties>
                    <project.release.version>1.1</project.release.version>
                </properties>
            </profile>
        </profiles>

     发布的时候使用命令 mvn deploy -P myRelease  (myRelease是profile取得id值)

     这样发布的时候会使用我们在profile中定义的properties中的变量值去替换<version></version>中的值

       

  • 相关阅读:
    redis几种数据类型以及使用场景
    Ubuntu16.04安装redis和php的redis扩展
    详细透彻解读Git与SVN的区别(集中式VS分布式)
    bootstrap轮播如何支持移动端滑动手势
    vue添加cnzz统计访问量
    el-tabs值修改时更新路由参数值
    Vue ,elementUI,dropdown组件中command方法添加额外参数的方法
    vue页面滚动监听
    mintui tabbar底部跳转页面
    vue 引入bootstrap
  • 原文地址:https://www.cnblogs.com/mouseIT/p/5035345.html
Copyright © 2011-2022 走看看