zoukankan      html  css  js  c++  java
  • nexus建立maven仓库私服及Snapshots、release的版本管理

    环境搭建
     

    1、linux安装maven

     
     
    tar zxvf apache-maven-3.0.5-bin.tar.gz
     
    mv apache-maven-3.0.5 /usr/local/apache-maven-3.0.5
     
    vi /etc/profile
    增加:
    export MAVEN_HOME=/usr/local/apache-maven-3.0.5
    export PATH=$PATH:$MAVEN_HOME/bin
     
    source /etc/profile 
     
    mvn -v
     
    2、linux安装nexus
     
    需要的安装包:nexus-2.11.4-01-bundle.tar(csdn下载地址:http://download.csdn.net/detail/carboncomputer/9595216)
    需要jdk版本1.7以上
     
    tar zxvf nexus-2.11.4-01-bundle.tar
     
    端口配置文件,可修改端口:/nexus-2.11.4-01/conf/nexus.properties
     
    cd nexus-2.11.4-01/bin
     
    ./nexus  start
     
    如果启动成功,就会显示如下:
     
    如果在启动过程中说要求root权限的。可以百度解决,或者用sudo sh nexus  start启动。
     
    用默认的账号密码登录:admin/admin123
     
    环境就部署好了,现在是使用maven仓库。
     
    注意:严重不提倡使用nexus3.0以上的版本,一开始用这个,安装时很多问题需要解决,此外,新的界面很难使用。官网上也是推荐使用maven时采用nexus2.X版本。
     
    maven仓库使用及版本发布管理
     
     
    点击仓库列表
     
    主要是两个类型:
    snapshots:开发过程中的版本仓库
    release:正式发布的版本仓库
    public是maven主库
     
    nexus默认新建了一个库:3rd party,专门存放第三方的jar,这个所搜搜几篇文章看看就有说明了。这里对于这个不一一说了,主要是介绍如何使用nexus来管理版本和本地开发过程。
     
    上传第三方的jar如下:
     
    snapshots、release全部开发允许部署的权限,如下
     

     
     
    本地是windows下的myeclipse10进行开发的,myeclipse10自带maven插件,直接使用,不需要加载这个插件,其他的比如eclipse需要自行处理。
     
    myeclipse配置setting.xml
     
    现在来看看setting.xml文件
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <localRepository>D:/maven/maven_jars</localRepository>

      <pluginGroups>
      </pluginGroups>

      <proxies>
      </proxies>

      <servers>

    <server>
        <id>releases</id>
            <username>deployment</username>
        <password>admin123</password>
    </server>
    <server>
         <id>snapshots</id>
            <username>deployment</username>
         <password>admin123</password>    
    </server>       
                           
    <server>
            <id>public</id>
            <username>deployment</username>
            <password>admin123</password>
    </server>
    </servers>
         

      <mirrors>

         <mirror>
          <id>nexus</id>
          <mirrorOf>nexus</mirrorOf>
          <name>nexus Repositories</name>
          <url>http://xxx.xx.xx.xx:8081/nexus/content/repositories/thirdparty/</url>
        </mirror>
         
      </mirrors>

      <profiles>
      
      <activeProfiles>  
            <activeProfile>dev</activeProfile>  
      
        </activeProfiles> 

    </settings>
     
    建立maven工程
     
     
    pom.xml的内容设置如下:
     
    < project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      < modelVersion >4.0.0 </modelVersion >
     
      < groupId> News_Recommend</ groupId>
      < artifactId> News_Recommend</ artifactId>
      < version> 0.0.5-SNAPSHOT</ version>
      < packaging> jar</ packaging>
     
     
    <!-- 设定主仓库 -->
    < repositories>
    <!-- nexus私服 -->
    < repository>
    < id> public</ id>
    < url> http://xxxx:8081/nexus/content/groups/public/ </url >
    < releases>
    < enabled> true</ enabled>
    </ releases>
    < snapshots>
    < enabled> true</ enabled>
    </ snapshots>
    </ repository>
     
    </ repositories>
     
    <!-- 自动打包 -->
        <distributionManagement >
            <repository >
                <id >releases </id >
                < url> http://xxxx:8081/nexus/content/repositories/releases </url >
            </repository >
     
            <snapshotRepository >
                <id >snapshots </id >
                < url> http://xxxx:8081/nexus/content/repositories/snapshots </url >
            </snapshotRepository >
        </distributionManagement >
     
     
     
    < dependencies>
     
    < dependency>
          <groupId > junit</ groupId>
          <artifactId > junit</ artifactId>
          <version >3.8.1 </version >
          <scope >test </scope >
        </dependency >
       
        <dependency >
          <groupId >com.oracle </groupId >
          <artifactId > ojdbc</ artifactId>
          <version >10.1.0.2.0 </version >
        
        </dependency >
         <dependency >
          <groupId > com</ groupId>
          <artifactId > testjar</ artifactId>
          <version >1.0.0 </version >
        </dependency >
     
         <dependency >
          <groupId >News_Recommend </groupId >
          <artifactId >News_Recommend </artifactId >
          <version >0.0.1 </version >
        </dependency >
       
    </ dependencies>
    < build>
    < plugins>
    < plugin>
    < groupId> org.apache.maven.plugins</ groupId>
    < artifactId> maven-compiler- plugin</ artifactId>
    < configuration>
    < source> ${jdk.version}</ source>
    < target> ${jdk.version}</ target>
    </ configuration>
    </ plugin>
    < plugin>
                <groupId >org.apache.maven.plugins </groupId >
                <artifactId > maven-war-plugin </artifactId >
                <version >2.4 </version >
                <configuration >
                    <failOnMissingWebXml >false </failOnMissingWebXml >
                </configuration >
            </plugin >
     
    </ plugins>
    < finalName> News_Recommend</ finalName>
    </ build>
     
    </ project>
     
    下面来生成开发版本的jar并自动上传到snaport仓库
     
    工程右键-->run as-->run configuration
     
     
     
     
     
     
    打开nexus后台可以看到打包成功并上传的jar:
     
    接下来,如何生成release版本呢,只需要修改pom.xml
     
     < groupId> News_Recommend</ groupId>
      < artifactId> News_Recommend</ artifactId>
      < version> 0.0.5-SNAPSHOT</ version>
      < packaging> jar</ packaging>
    改为
     < groupId> News_Recommend</ groupId>
      < artifactId> News_Recommend</ artifactId>
      < version> 0.0.5</ version>
      < packaging> jar</ packaging>
     
    即可。
     
    打开nexus后台查看正式版本:
     
    工程进行正式升级时只需要在pom.xml配置新增的jar依赖包即可,如下:
     
     原文地址:http://www.cnblogs.com/zhongshengzhen/p/nexus_maven.html
     
    弄了两天才有了眉目,希望对大家有用,不吝赐教和点赞,谢谢。
  • 相关阅读:
    JS弹出下载对话框以及实现常见文件类型的下载
    什么是物理像素、虚拟像素、逻辑像素、设备像素,什么又是 PPI, DPI, DPR 和 DIP
    学会git玩转github,结尾有惊喜!有惊喜!有惊喜!
    Menu实现逻辑
    控件保持多种绘图状态的做法
    2个函数宏技巧
    绘图 Painter转接口封装的方式
    DirectUI消息循环的简单封装
    c++以代理的方式来实现接口化编程
    c++对象工厂
  • 原文地址:https://www.cnblogs.com/zhongshengzhen/p/nexus_maven.html
Copyright © 2011-2022 走看看