亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

1 注冊(cè)maven(oss)賬號(hào)

注冊(cè)地址:
https://issues.sonatype.org/secure/Signup!default.jspa

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

注冊(cè)成功后登陸到首頁(yè)

2 創(chuàng)建一個(gè)Issue

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

Project: 項(xiàng)目類(lèi)型,一般為Community Support。

Issue Type: 問(wèn)題類(lèi)型, 新的項(xiàng)目為New Project。

Summary:項(xiàng)目名稱,如HASentinel。

Description:項(xiàng)目描述,介紹一下當(dāng)前項(xiàng)目。

Group Id:對(duì)應(yīng)pom.xml里的group id。如果你有個(gè)人或企業(yè)的域名,可以為公司的域名,審核時(shí)候需要驗(yàn)證當(dāng)前域名為本人所有,如com.eeeffff.hasentinel,其中com.eeeffff須為域名eeeffff.com的擁有者,如果沒(méi)有可以寫(xiě)github對(duì)應(yīng)的個(gè)人地址(如:com.github.potenstop)

Project URL: 項(xiàng)目的地址,如
https://github.com/fenglibin/HASentinel 。

SCM url:項(xiàng)目對(duì)應(yīng)的下載地址,如
https://github.com/fenglibin/HASentinel .git。

其他保持默認(rèn)。填寫(xiě)完成后就可以create了。

3 域名擁有者驗(yàn)證

項(xiàng)目創(chuàng)建成功后,會(huì)有一個(gè)項(xiàng)目編輯,如下所示:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

然后根據(jù)其要求,到域名提供商那里做一條TXT解析,這是最快的一種認(rèn)證方式:

域名服務(wù)商增加該域名eeeffff.com的TXT解析:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

記錄值即為為該項(xiàng)目對(duì)應(yīng)的項(xiàng)目代碼值。

4 pgp生產(chǎn)秘鑰key

我的電腦是linux Ubuntu18,Ubuntu本身包含了gpg這個(gè)命令,因而不需要額外的下載,如果是其它系統(tǒng),可能需要下載相應(yīng)的軟件或命令。

生成加密key,使用命令“gpg --gen-key”:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

查看生成的加密Key,使用命令“gpg --list-keys”:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

將加密Key推送加遠(yuǎn)程加密服務(wù)器,此處我推到Ubuntu的加密服務(wù)器:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

推送如果不報(bào)錯(cuò),則說(shuō)明推成功,如果推失敗則多嘗試幾次,或者換一個(gè)遠(yuǎn)程加密服務(wù)器,加密服務(wù)器之間會(huì)相互同步數(shù)據(jù)。

查看推送的加密Key:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

這步一定要驗(yàn)證一下,以確保推送真的成功了,如果獲取失敗則多嘗試幾次,我這邊第一次操作就顯示失敗了。

5 配置settings.xml

在maven對(duì)應(yīng)的config目錄下的settings.xml中的services節(jié)點(diǎn)下增加一個(gè)service節(jié)點(diǎn),配置你當(dāng)前sonatype的用戶名和密碼,用于后續(xù)jar包遠(yuǎn)程推送到maven做權(quán)限驗(yàn)證,這里的id要和pom.xml中distributionManagement配置的id要一一對(duì)應(yīng),如我配置的為

<server>
    <id>ossrh</id>
    <username>maven_username</username>
    <password>maven_password</password>
</server>

6 配置pom.xml

發(fā)布到maven倉(cāng)庫(kù)的項(xiàng)目,要求配置如下內(nèi)容:

name: 項(xiàng)目名稱。

description: 項(xiàng)目描述。

url: 項(xiàng)目地址

licenses: 開(kāi)源協(xié)議。

developers: 開(kāi)發(fā)者列表。

scm: 項(xiàng)目的git地址相關(guān)。

profiles: 配置不同的環(huán)境。比如開(kāi)發(fā)環(huán)境 測(cè)試環(huán)境 發(fā)布環(huán)境。

groupId: 定義當(dāng)前maven項(xiàng)目隸屬的實(shí)際項(xiàng)目。

artifactId: 該元素定義實(shí)際項(xiàng)目中的一個(gè)Maven項(xiàng)目(模塊).

version: 版本號(hào), 帶SNAPSHOT為快照版本,否則為 release 版本。

build: 插件。需要加上maven-source-plugin、maven-JAVAdoc-plugin、maven-gpg-plugin三個(gè)插件

dependencies: 依賴的模塊。

pom.xml 配置參考如下截圖及配置代碼所示:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

        <!-- 配置必須的插件 -->
        <plugins>
            <plugin>
                <groupId>org.Apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>${maven.compiler.source}</source>
                    <target>${maven.compiler.target}</target>
                </configuration>
            </plugin>
 
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>${maven.deploy.version}</version>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.2.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.3.0</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
        </plugins>
        <!-- 配置項(xiàng)目發(fā)布的maven倉(cāng)庫(kù)路徑 -->
        <distributionManagement>
        <repository>
            <id>ossrh</id>
            <name>Release</name>
            <url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
 
        <snapshotRepository>
            <id>ossrh</id>
            <name>SNAPSHOTS</name>
            <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

7 發(fā)布版本

都配置成功后,此時(shí)轉(zhuǎn)到項(xiàng)目的根目錄下,執(zhí)行如下maven打包及發(fā)布命令:

mvn clean source:jar install deploy -Dmaven.test.skip

如果沒(méi)有報(bào)錯(cuò),則輸出如下截圖所示:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

此時(shí)可以在創(chuàng)建項(xiàng)目的sonatype頁(yè)面給負(fù)責(zé)和你對(duì)接的人留言,讓他執(zhí)行下一步操作,他會(huì)告訴你下一步該做什么:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

8 在oss查看快照

發(fā)布快照版本,只需要在版本號(hào)后面加上SNAPSHOT字符串,重新打包即可,Maven會(huì)自動(dòng)判斷當(dāng)前發(fā)布為快照版本,快照版本可以無(wú)限次發(fā)布,不需要在倉(cāng)庫(kù)中刪除后再發(fā)布。

查看地址:
https://s01.oss.sonatype.org

可以根據(jù)GroupID搜索對(duì)應(yīng)工程的快照的信息,查看快照是不需要登陸的,如下圖所示。

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

9 發(fā)布和查看release版本

發(fā)布release版本只需要去掉版本號(hào)后面的的SNAPSHOT,重新執(zhí)行deploy即可,但是請(qǐng)記住,此時(shí)deploy成功并不是真的發(fā)到了線上的Maven倉(cāng)庫(kù),此時(shí)相當(dāng)于發(fā)到了一個(gè)預(yù)發(fā)布倉(cāng)庫(kù),此時(shí)需要用戶去執(zhí)行項(xiàng)目檢查,包括javadoc生成是否符合規(guī)范、pom文件是否包含了scm地址等信息、是否通過(guò)gpg生成了校驗(yàn)asc文件等等,如果通不過(guò)會(huì)有相應(yīng)的提示,完成這些修改后才能后關(guān)閉當(dāng)前issue,執(zhí)行真正的發(fā)布動(dòng)作。

查看release版本需要登錄才可以看到, 用戶名和密碼和注冊(cè)maven一致。

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

執(zhí)行項(xiàng)目檢查的步驟:1)選中一個(gè)項(xiàng)目;2)執(zhí)行上面的Close操作,然后項(xiàng)目會(huì)執(zhí)行規(guī)范及安全檢查,如果通過(guò)則release按鈕會(huì)變得可用,如果檢驗(yàn)沒(méi)有通過(guò),則會(huì)有相應(yīng)的提示信息,需要根據(jù)提示修改,在執(zhí)行下一次執(zhí)行deploy之前,先通過(guò)Drop功能刪除掉當(dāng)前項(xiàng)目。

校驗(yàn)不通過(guò)大致信息如下所示:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

此處展示了三種類(lèi)型的錯(cuò)誤:

簽名校驗(yàn)錯(cuò)誤;

pom文件校驗(yàn)錯(cuò)誤;

Javadoc校驗(yàn)錯(cuò)誤。

10 正式同步到Maven中央庫(kù)

如果是第一次發(fā)布,需要在release成功后在之前的issue添加評(píng)論,告知該項(xiàng)目預(yù)計(jì)release成功。如下圖:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

待管理人員正式執(zhí)行同步,等待一段時(shí)間,就可以在maven的正式倉(cāng)庫(kù)中執(zhí)行到該項(xiàng)目了。

Maven倉(cāng)庫(kù)(https://search.maven.org/)中搜索項(xiàng)目:

Java項(xiàng)目發(fā)布到Maven中央倉(cāng)庫(kù)操作步驟及相關(guān)注意事項(xiàng)

 

分享到:
標(biāo)簽:Java
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定