如有侵权,请联系作者。
转载请注明出处。
记录自己,分享他人。
标签:Maven,上传,发布,源码,deploy,source,私服,Nexus。
修订历史
- 2021-12-06:首次发布。
步骤
1. 修改 settings.xml 配置登录用户
部署/上传/deploy 源码至私服/Nexus 需要用户具有 upload 权限,如果使用的用户没有权限,会报 401(No Authorization。题外话,Authorization 是无权限,Authentication 是未认证,可以正常登陆的合法用户是认证用户,已认证的用户不一定有权限)。在 settings.xml 文件中配置以下内容,该用户名密码可以向 Nexus 运维人员处索取:
</servers>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
2. 修改 pom.xml 配置私服服务器
在 pom.xml 文件中配置源码上传的目的地。其中 id 要和第一步的 server.id 保持一致,name 可以自定义,url 就是要目的地的地址:
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>custom-releases</name>
<url>http://url-of-nexus-releases</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>custom-snapshots</name>
<url>http://url-of-nexus-snapshots</url>
</snapshotRepository>
</distributionManagement>
3. 修改 pom.xml 配置源码插件
在 pom.xml 文件中配置如下插件,其中 execution.phase 指定绑定到生命周期的哪个阶段,goal 指定要执行的目标。绑定到 compile 执行 jar-no-fork 可以在 compile 时期将源码打包到一个 jar 文件中。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
4. 执行命令发布至私服
执行 mvn deploy 即可将编译好的 jar 包和源码包一起发布至私服。