搭建Maven私服

  最近从SVN下载的代码,在本地构建时出现了诸多问题,部分依赖下载超时,就想起在局域网搭建Maven私服,废话不说了,在测试服务器上建的已经成功,就随便找台机子再练习一遍顺道写个日志。
1、前往http://www.sonatype.com/download-oss-sonatype下载Nexus-Bundle
  下载地址:http://www.sonatype.org/downloads/nexus-latest-bundle.zip
2、解压下载的nexus-2.13.0-01-bundle
  
3、安装并nexus服务
  更改nexus服务端口(可选步骤)
  
  这里使用默认端口 8081
  
5、修改用户Maven配置文件,%userprofile%\.m2\setting.xml
  
  Content of setting.xml (You should replace `username`,`password` & `url` in the file if you have changed them.)  

<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">
  <servers>
    <server>
      <id>releases</id>
      <username>admin</username>
      <password>adminsa</password>
    </server>
    <server>
      <id>snapshots</id>
      <username>admin</username>
      <password>adminsa</password>
    </server>
  </servers>

  <mirrors>
    <mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <url>http://192.168.1.222:7758/nexus/content/groups/public/</url>
    </mirror>
  </mirrors>

  <profiles>
    <profile>
      <id>nexus</id>
      <repositories>
        <repository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>

      <pluginRepositories>
        <pluginRepository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>

  <activeProfiles>
    <activeProfile>nexus</activeProfile>
  </activeProfiles>
</settings>

 

6、客户端配置(假定已经配置好Maven运行环境)

  为pom.xml添加Maven私服配置
  
  Content of add item

<repositories>
    <repository>
    <id>nexus</id>
    <name>Team Nexus Repository</name>
    <url>http://127.0.0.1:8081/nexus/content/groups/public</url>
    </repository>
</repositories>

<pluginRepositories>
    <pluginRepository>
    <id>nexus</id>
    <name>Team Nexus Repository</name>
    <url>http://127.0.0.1:8081/nexus/content/groups/public</url>
    </pluginRepository>
</pluginRepositories>

7、客户端测试(需要有Maven项目,没有点击下载 A Simple Maven Project
  进入到Maven项目目录(pom.xml所在目录)
  
8、验证Maven私服(Repositories -> Repository Path[Central])
  
9、看到刚刚使用 mvn clean命令下载的plexus-utils-3.0已经在私服仓库中,这时如果局域网内其他机器测试就会直接从私服上下载,为项目构建节省资源。
  可以看到在另一台机器上已经下载一上午的结果(Mac系统有时候让人很无语)
  
  再看看修改了pom.xml后再看看构建是个什么样子吧
  
  构建完成,是不是感觉用起来很爽,值得一提的是,其他客户机上同样需要在用户目录的.m2子目录中创建setting.xml配置上Maven私服。在Intellij Idea上直接 update indecies还不行,明明已经配置了使用下载的Maven,原因正在调查中。
  

posted @ 2016-05-13 12:42  祁连山  阅读(2939)  评论(0编辑  收藏  举报