成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

將Gradle項(xiàng)目發(fā)布到Maven Central庫(kù)中

SnaiLiu / 794人閱讀

摘要:本文主要介紹如何一個(gè)由構(gòu)建的項(xiàng)目部署到網(wǎng)上大部分都是介紹如何將由構(gòu)建的項(xiàng)目部署到。申請(qǐng)賬號(hào)前往申請(qǐng)賬號(hào)。其中有和這兩個(gè)變量是定義在中的。這些信息不要加入到版本管理中。發(fā)布過(guò)程當(dāng)上述步驟全部完成時(shí),可以直接執(zhí)行。

本文主要介紹如何一個(gè)由gradle構(gòu)建的項(xiàng)目部署到Maven Central.

網(wǎng)上大部分都是介紹如何將由maven構(gòu)建的項(xiàng)目部署到Maven Central。與Gradle相關(guān)的比較少。

申請(qǐng)賬號(hào)

前往 sonatype申請(qǐng)賬號(hào)。

申請(qǐng)完,Create Issue。

按照這個(gè)模板填。

這一塊比較簡(jiǎn)單,網(wǎng)上教程也比較多。

Create Issue結(jié)束后,官方會(huì)需要你證明你擁有相對(duì)應(yīng)的domain。

證明有以下3個(gè)途徑:

Add a TXT record to your DNS referencing this JIRA ticket: OSSRH-44681 (Fastest)

Setup a redirect to your Github page (if it does not already exist)

Send an email to [email protected] referencing this issue from a ... email address

證明完畢之后,你就可以發(fā)布包了。

你就可以做下面幾件事了:

Deploy snapshot artifacts into repository https://oss.sonatype.org/cont...

Deploy release artifacts into the staging repository https://oss.sonatype.org/serv...

Promote staged artifacts into repository "Releases"

Download snapshot and release artifacts from group https://oss.sonatype.org/cont...

Download snapshot, release and staged artifacts from staging group https://oss.sonatype.org/cont...

構(gòu)建Gradle

下面主要內(nèi)容基于 官方英文教程,加上一些個(gè)人構(gòu)建時(shí)候的一些收獲。

build.gralde 文件修改 引入plugin
apply plugin: "maven"
apply plugin: "signing"
task javadocJar(type: Jar) {
    classifier = "javadoc"
    from javadoc
}

task sourcesJar(type: Jar) {
    classifier = "sources"
    from sourceSets.main.allSource
}

artifacts {
    archives javadocJar, sourcesJar
}
引入U(xiǎn)ploadArchives task

引入UploadArchives這個(gè)task,記住更改里面的個(gè)人相關(guān)信息。

其中有ossrhUsernameossrhPassword這兩個(gè)變量是定義在gradle.properties中的。

uploadArchives {
    repositories {
        mavenDeployer {
            beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }

            repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
                authentication(userName: ossrhUsername, password: ossrhPassword)
            }

            snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
                authentication(userName: ossrhUsername, password: ossrhPassword)
            }

            pom.project {
                name "Example Application"
                packaging "jar"
                // optionally artifactId can be defined here 
                description "A application used as an example on how to set up 
                pushing its components to the Central Repository . "
                url "http://www.example.com/example-application"

                scm {
                    connection "scm:git:[email protected]:username/project.git"
                    developerConnection "scm:git:[email protected]:username/project.git"
                    url "https://github.com/username/project"
                }

                licenses {
                    license {
                        name "The Apache License, Version 2.0"
                        url "http://www.apache.org/licenses/LICENSE-2.0.txt"
                    }
                }

                developers {
                    developer {
                        id "manfred"
                        name "Manfred Moser"
                        email "[email protected]"
                    }
                }
            }
        }
    }
}
編寫(xiě)gradle.properties

主要是將一些認(rèn)證信息填在這里。(這些信息不要加入到版本管理中)。

以下3個(gè)信息怎么來(lái)下一章節(jié)來(lái)講
signing.keyId=YourKeyId
signing.password=YourPublicKeyPassword
signing.secretKeyRingFile=PathToYourKeyRingFile

ossrhUsername=your-jira-id  你在sonatype申請(qǐng)的賬號(hào)的用戶名
ossrhPassword=your-jira-password  你在sonatype申請(qǐng)的賬號(hào)的密碼
生成GPG加密信息

windows中可以安裝gpg4win來(lái)生成相關(guān)信息。但是我個(gè)人在windows10中并沒(méi)有能夠打開(kāi)。
所以我使用了WSL來(lái)生成相關(guān)信息。如果你的系統(tǒng)是Linux也可以。

執(zhí)行gpg --gen-key, 按照提示的信息填入密碼,用戶名等信息,這些信息記錄下來(lái)。這里填入的密碼就是上面gradle.properties中的signing.password。

執(zhí)行gpg --list-keys, 可以看到

/root/.gnupg/pubring.gpg
pub   2048R/B98765 2018-12-08
uid                  
sub 2048R/A123456 

第一行便是對(duì)應(yīng)的公鑰文件位置,pug后面的B98765便是public key Id,這個(gè)id也就是上面gradle.properties中的signing.keyId

執(zhí)行 gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys B98765將公鑰發(fā)送到hkp://pool.sks-keyservers.net。

記錄下/root/.gnupg/secring.png的位置,這個(gè)位置便是上面gradle.properties中的signing.secretKeyRingFile的值。

發(fā)布過(guò)程

當(dāng)上述步驟全部完成時(shí),可以直接執(zhí)行gradle uploadArchives

發(fā)布Snapshot版本

如果你的版本是snapshot的,你可以直接在https://oss.sonatype.org/content/repositories/snapshots中看到你的包。

發(fā)布Release版本

如果你的版本是release版本。
登錄https://oss.sonatype.org/#welcome,選擇Staging Repositories,然后在右邊用groupId去搜索。
這樣會(huì)找到你的項(xiàng)目。選中你的項(xiàng)目close然后confirm。過(guò)一會(huì)再來(lái)尋找一次該構(gòu)建,點(diǎn)擊Release在Confirm。過(guò)一會(huì)就應(yīng)該能在https://oss.sonatype.org/content/groups/public中看到你的項(xiàng)目了。

注意點(diǎn)

這里Close可能觸發(fā)一些錯(cuò)誤,可以點(diǎn)擊下方的Activity來(lái)查看錯(cuò)誤的原因。一般來(lái)說(shuō),可能是并沒(méi)有javadoc和source導(dǎo)致的。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72609.html

相關(guān)文章

  • 使用Gradle構(gòu)建Java項(xiàng)目

    摘要:要從頭開(kāi)始,請(qǐng)繼續(xù)使用構(gòu)建。文件夾應(yīng)包含項(xiàng)目運(yùn)行單元測(cè)試的報(bào)告。由于該項(xiàng)目尚未進(jìn)行任何單元測(cè)試,因此該報(bào)告無(wú)效。使用構(gòu)建項(xiàng)目是啟動(dòng)構(gòu)建的首選方式?,F(xiàn)在可用于構(gòu)建項(xiàng)目。概要恭喜您現(xiàn)在已經(jīng)創(chuàng)建了一個(gè)簡(jiǎn)單而有效的構(gòu)建文件,用于構(gòu)建項(xiàng)目。 本指南將引導(dǎo)您使用Gradle構(gòu)建一個(gè)簡(jiǎn)單的Java項(xiàng)目。 你要構(gòu)建什么 您將創(chuàng)建一個(gè)簡(jiǎn)單的應(yīng)用程序,然后使用Gradle構(gòu)建它。 你需要什么 大約15分...

    xiaokai 評(píng)論0 收藏0
  • win10+vscode部署java開(kāi)發(fā)環(huán)境

    摘要:最近在學(xué),嫌太重,就自己摸索了一下用部署開(kāi)發(fā)環(huán)境的方法,比較適合輕度入門(mén)級(jí)以及對(duì)比較熟不想換編輯器的搞法。部署是家的構(gòu)建系統(tǒng)工具,一般上用的更多些。 最近在學(xué)Java,嫌IDE太重,就自己摸索了一下用VScode部署Java開(kāi)發(fā)環(huán)境的方法,比較適合輕度入門(mén)級(jí)、以及對(duì)比較熟VScode不想換編輯器的搞法。 部署JDK其實(shí)之前在大概1.5的時(shí)候就看過(guò)一點(diǎn)Java的東西,也裝過(guò)JDK還有...

    y1chuan 評(píng)論0 收藏0
  • 物聯(lián)網(wǎng)平臺(tái)thingsboard編譯一步

    摘要:物聯(lián)網(wǎng)平臺(tái)編譯一步到位物聯(lián)網(wǎng)平臺(tái)編譯一步到位簡(jiǎn)介項(xiàng)目前置準(zhǔn)備安裝安裝將放入本地緩存配置鏡像地址編譯運(yùn)行物聯(lián)網(wǎng)平臺(tái)編譯一步到位先上編譯結(jié)果,耗時(shí)分秒簡(jiǎn)介是一個(gè)開(kāi)源物聯(lián)網(wǎng)平臺(tái),可實(shí)現(xiàn)物聯(lián)網(wǎng)項(xiàng)目的快速開(kāi)發(fā)管理和擴(kuò)展。 ...

    劉永祥 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<