码迷,mamicode.com
首页 > 其他好文 > 详细

nexus建立maven仓库私服及Snapshots、release的版本管理

时间:2016-08-04 19:20:03      阅读:11646      评论:0      收藏:0      [点我收藏+]

标签:

环境搭建
 

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://120.76.206.82: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
 
弄了两天才有了眉目,希望对大家有用,不吝赐教和点赞,谢谢。

nexus建立maven仓库私服及Snapshots、release的版本管理

标签:

原文地址:http://www.cnblogs.com/zhongshengzhen/p/nexus_maven.html

(0)
(5)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!