註冊在這裏: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文件中要加入:
<servers>
<server>
<id>sonatype-nexus-snapshots</id>
<username>your-jira-username</username>
<password>your-jira-password</password>
</server>
<server>
<id>sonatype-nexus-staging</id>
<username>your-jira-username</username>
<password>your-jira-password</password>
</server>
</servers>
2) pom.xml文件中要加入(project標籤下):
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>7</version>
</parent>
3)如果出現javadoc編譯不通過的可以在javadoc插件下加入:
<configuration>
<additionalparam>-Xdoclint:none</additionalparam>
</configuration>
4) 注意如過時release要加入:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
5) 如果是java web項目,javadoc可能會報錯:找不到類javax.servlet.ServletContext,可以添加依賴:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
6) POM編寫可參考https://github.com/ACC-GIT/ACCWeb/blob/master/pom.xml
步驟四:release和提示同步。先在https://oss.sonatype.org/#stagingRepositories進行close,release等操作(注意這裏會檢測)
然後在issue中回覆服務人員,提出同步到中央庫(半天左右)。