linux下 nexus搭建maven私有库 自动打包
linux下nexus搭建maven私有库自动打包
首先需要安装nexus:http://www.sonatype.org/nexus/go/
如上图所示
执行命令解压tar包
tar zxvf nexus-2.11.3-01-bundle.tar.gz
进入解压好的目录
cd nexus-2.11.3-01
进入bin目录运行nexus
cd bin
./nexus start
关闭nexus的命令是
./nexus stop
启动成功后打开浏览器键入URL
http://localhost:8081/nexus/index.html
点击这里登陆
默认账户:admin
默认密码:admin123
将所有type为proxy的configuration配置选项中DownloadRemoteIndex置为True,然后点击Save保存
其中3rd party选项中可以上传第三方jar包一些maven下载不下来的,公共仓库上找不到的,就可以在3rd party中的Artifacts upload选项卡中上传jar包
新建组
将右边的Available Repositories全部拖到左边点击Save保存
将Releases仓库的Deployment Policy设置为*Allow ReDeploy
pom.xml配置
<!-- 私有仓库 -->
<repositories>
<repository>
<id>public</id> <!--这个ID需要与你新建的组group ID一致-->
<name>Public Repository</name>
<url>http://xxx.xx.xx.xx:8081/nexus/content/groups/public/</url>
</repository>
</repositories>
<!-- 自动打包 -->
<distributionManagement>
<repository>
<id>releases</id><!--这个ID需要与你的release仓库的Repository ID一致-->
<url>http://xxx.xx.xx.xx:8081/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>snapshots</id><!--这个ID需要与你的snapshots仓库的Repository ID一致-->
<url>http://xxx.xx.xx.xx:8081/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
设置deployment账户密码
setting.xml配置
<server>
<id>releases</id>
<username>deployment</username>
<password>admin123</password><!--这个密码就是你设置的密码-->
</server>
<server>
<id>snapshots</id>
<username>deployment</username>
<password>admin123</password><!--这个密码就是你设置的密码-->
</server>
最后右键项目->Run As->Run Configurations双击左边选项卡的Maven Build新建一个,如图所示
最后就可以在仓库中看到打好的包
需要注意的是,当pom.xml中同时配置了releases仓库和snapshots仓库时pom.xml文件开头的版本配置<version>1.0.0-SNAPSHOT</version>
为build到snapshots库,而<version>1.0.0</version>
**不带-SNAPSHOT的会build到releases库,如果只配置了releases库而版本号写的是带-SNAPSHOT的,build到最后一步会报400错误。