Linux 使用nexus搭建maven私服

一、准备工作

     系统:LINUX
          JDK:已安装(未安装详见jdk安装教程:http://www.cnblogs.com/muzi1994/p/5818099.html)
          Maven:已安装(未安装详见maven安装教程:http://www.cnblogs.com/muzi1994/p/6030181.html)
          Nexus:http://www.sonatype.org/nexus/go
                     所有版本下载地址: http://www.sonatype.org/nexus/archived/
          Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。

二、安装Nexus

  1.解压nexus文件

?
1
[root @centos6 var]# tar -zvxf nexus- 2.12 . 0 - 01 -bundle.tar.gz

  

      注:解压后有两个文件夹:

                  nexus-2.12.0-01: 是nexus的核心文件

                  sonatype-work :maven下载jar存放地址

  2.启动Nexus

?
1
2
3
4
5
6
[root @centos6 nexus- 2.12 . 0 - 01 ]# ./bin/nexus start
 
- ****************************************
WARNING - NOT RECOMMENDED TO RUN AS ROOT
****************************************
If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script.

  默认情况下,不建议以root用户运行Nexus,可以修改bin/nexus中的配置跳过警告(修改RUN_AS_USER=root)

?
1
[root @centos6 nexus- 2.12 . 0 - 01 ]# vi bin/nexus

  

     重新启动Nexus

?
1
2
3
4
5
6
7
[root @centos6 nexus- 2.12 . 0 - 01 ]# ./bin/nexus start
 
- ****************************************
WARNING - NOT RECOMMENDED TO RUN AS ROOT
****************************************
Starting Nexus OSS...
Started Nexus OSS.

  注:Nexus默认端口8081,如果想修改端口。修改/conf/nexus.properties文件

      

      访问网址:http://192.168.1.11:8081/nexus/#welcome

      

      点击右上角的 Log In 按钮即可登陆了。默认登录账号/密码为: admin/admin123 ,登陆成功后的界面

      

  点击Repositories,将列表中所有Type为proxy 的项目的 Configuration 中的 Download Remote Indexes 设置为True

      

     将Releases仓库的Deployment Policy设置为 Allow ReDeploy

      

      当然我们也避免不了会使用到一些第三方的 jar ,而这些jar包也不存在于互联网上的maven中央仓库中,这时我们可以手工添加jar 到我们的私服中。
      添加第三方 jar 如下:
      

      填写完必选字段,点击Upload Artifact(s)按钮即可。

  3.配置本地项目引用私服

   自动发布构件到远程仓库,在工程pom.xml中添加

?
1
2
3
4
5
6
7
8
9
10
<distributionManagement>
     <repository>
         <id>releases</id><!--这个ID需要与你的release仓库的Repository ID一致-->
         <url>http: //192.168.1.11:8081/nexus/content/repositories/releases</url>
     </repository>
     <snapshotRepository>
         <id>snapshots</id><!--这个ID需要与你的snapshots仓库的Repository ID一致-->
         <url>http: //192.168.1.11:8081/nexus/content/repositories/snapshots</url>
     </snapshotRepository>
</distributionManagement>

  修改本地$MAVEN_HOME\conf目录下的settings.xml配置文件,添加如下配置

?
1
2
3
4
5
6
7
8
9
10
11
12
<servers>
     <server>
         <id>releases</id>
         <username>admin</username>
         <password>admin123</password>
     </server>
     <server>
         <id>snapshots</id>
         <username>admin</username>
         <password>admin123</password>
     </server>
</servers>

  在本地工程目录下执行:

?
1
mvn deploy

  所部署的包就自动上传到了nexus安装目录下的

     

  4.配置Maven从Nexus下载构件

    在POM中配置Nexus私服,这样的配置只对当前的Maven项目有效。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!--指定Nexus的构件仓库-->
<repositories>
     <repository>
         <id> public </id>
         <name>Team Maven Repository</name>
         <url>http: //192.168.1.11:8081/nexus/content/groups/public/</url>
         <releases>
             <enabled> true </enabled>
         </releases>
         <snapshots>
             <enabled> true </enabled>
         </snapshots>
     </repository>
</repositories>
 
<!--指定Nexus的插件仓库-->
<pluginRepositories>
     <pluginRepository>
         <id> public </id>
         <name>Team Maven Repository</name>
         <url>http: //192.168.1.11:8081/nexus/content/groups/public/</url>
         <releases>
             <enabled> true </enabled>
         </releases>
         <snapshots>
             <enabled> true </enabled>
         </snapshots>
     </pluginRepository>
</pluginRepositories>

  在settings.xml中配置profile元素,这样就能让本机所有的Maven项目都使用自己的Maven私服。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<properties>
         <repository>
             <id> public </id>
             <name>Team Maven Repository</name>
             <url>http: //192.168.1.11:8081/nexus/content/groups/public/</url>
             <releases>
                 <enabled> true </enabled>
             </releases>
             <layout> default </layout>
             <snapshots>
                 <enabled> true </enabled>
             </snapshots>
         </repository><br></properties>

  

 

 

 

 


 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值