maven 发布artifact到中央库

步骤一:注册账号,申请ticket。
注册在这里:https://issues.sonatype.org
申请ticket:创建一个issue,注意这里要选OSSRH,且是PROJECT而不是TASK,group id要慎重写,不能写你没有权限的,不然服务人员会让你重写(半天左右)。
申请成功后会提示:Configuration has been prepared, now you can:please comment on this ticket when you promoted your first release, thanks
步骤二:GPG,签名和加密用。
下载:https://www.gnupg.org/download/index.html
注意:签名的名字,邮箱和步骤一的一样,记住passphrase用于下面步骤。
步骤三:编译和提交文件。
注意事项:

1).m2\settings.xml文件中要加入:

  1. <servers>
  2.     <server>
  3.         <id>sonatype-nexus-snapshots</id>
  4.         <username>your-jira-username</username>
  5.         <password>your-jira-password</password>
  6.     </server>
  7.     <server>
  8.         <id>sonatype-nexus-staging</id>
  9.         <username>your-jira-username</username>
  10.         <password>your-jira-password</password>
  11.     </server>
  12. </servers>

2)  pom.xml文件中要加入(project标签下):

  1. <parent>
  2.     <groupId>org.sonatype.oss</groupId>
  3.     <artifactId>oss-parent</artifactId>
  4.     <version>7</version>
  5. </parent>

3)如果出现javadoc编译不通过的可以在javadoc插件下加入:

  1. <configuration>
  2.     <additionalparam>-Xdoclint:none</additionalparam>
  3. </configuration>

4) 注意如过时release要加入:

  1. <plugin>
  2.     <groupId>org.apache.maven.plugins</groupId>
  3.     <artifactId>maven-gpg-plugin</artifactId>
  4.     <version>${maven-gpg-plugin.version}</version>
  5.     <executions>
  6.         <execution>
  7.             <phase>verify</phase>
  8.             <goals>
  9.                 <goal>sign</goal>
  10.             </goals>
  11.         </execution>
  12.     </executions>
  13. </plugin>

5) 如果是java web项目,javadoc可能会报错:找不到类javax.servlet.ServletContext,可以添加依赖:

  1. <dependency>
  2.     <groupId>javax.servlet</groupId>
  3.     <artifactId>javax.servlet-api</artifactId>
  4.     <version>3.0.1</version>
  5.     <scope>provided</scope>
  6. </dependency>

6) POM编写可参考https://github.com/ACC-GIT/ACCWeb/blob/master/pom.xml

步骤四:release和提示同步。
先在https://oss.sonatype.org/#stagingRepositories进行close,release等操作(注意这里会检测)
然后在issue中回复服务人员,提出同步到中央库(半天左右)。

摘自「互联网」

No Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

粤ICP备15062915号-1