1、配置 maven 的setting.xml 文件.
a、配置server
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- Another sample, using keys to authenticate.
<server>
<id>siteServer</id>
<privateKey>/path/to/private/key</privateKey>
<passphrase>optional; leave empty if not used.</passphrase>
</server>
-->
</servers>
b、配置 mirror
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://ip:端口/nexus/content/groups/public/</url>
</mirror>
c、配置profile
对应的id 和nexus 仓库中的id 保持一致.
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>public</id>
<url>http://ip:port/nexus/content/groups/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>public</id>
<url>http://ip:port/nexus/content/groups/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
d、配置activeProfile
里面的值nexus 和上面c 步骤中配置的id 一致.
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
2、配置项目工程里的pom.xml 文件.
添加如下配置
<distributionManagement>
<!-- 发布到快照版本的仓库,即测试版本仓库 -->
<snapshotRepository>
<id>snapshots</id>
<url>http://ip:port/nexus/content/repositories/releases/</url>
</snapshotRepository>
<!-- 发布到发行版本的仓库中,即正式版本仓库 -->
<repository>
<id>releases</id>
<url>http://ip:port/nexus/content/repositories/snapshots/</url>
</repository>
</distributionManagement>
如果想将项目的源码也打成jar 放到nexus 仓库上,可以添加如下插件,注意:此插件只能放在每个项目的pom.xml ,不能放在父项目上.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.0</version>
<!-- 绑定source插件到Maven的生命周期,并在生命周期后执行绑定的source的goal -->
<executions>
<execution>
<!-- 绑定source插件到Maven的生命周期 -->
<phase>compile</phase>
<!--在生命周期后执行绑定的source插件的goals -->
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
3、执行IDEA 里maven 插件中的deploy 工具既可.
在nexus 上查看