摘要:本文主要介紹如何一個由構建的項目部署到網上大部分都是介紹如何將由構建的項目部署到。申請賬號前往申請賬號。其中有和這兩個變量是定義在中的。這些信息不要加入到版本管理中。發布過程當上述步驟全部完成時,可以直接執行。
本文主要介紹如何一個由gradle構建的項目部署到Maven Central.
網上大部分都是介紹如何將由maven構建的項目部署到Maven Central。與Gradle相關的比較少。
申請賬號前往 sonatype申請賬號。
申請完,Create Issue。
按照這個模板填。
這一塊比較簡單,網上教程也比較多。
Create Issue結束后,官方會需要你證明你擁有相對應的domain。
證明有以下3個途徑:
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 central@sonatype.com referencing this issue from a ... email address
證明完畢之后,你就可以發布包了。
你就可以做下面幾件事了:
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...
構建Gradle下面主要內容基于 官方英文教程,加上一些個人構建時候的一些收獲。
build.gralde 文件修改 引入pluginapply 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 }引入UploadArchives task
引入UploadArchives這個task,記住更改里面的個人相關信息。
其中有ossrhUsername和ossrhPassword這兩個變量是定義在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:git@github.com:username/project.git" developerConnection "scm:git:git@github.com: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 "manfred@sonatype.com" } } } } } }編寫gradle.properties
主要是將一些認證信息填在這里。(這些信息不要加入到版本管理中)。
以下3個信息怎么來下一章節來講 signing.keyId=YourKeyId signing.password=YourPublicKeyPassword signing.secretKeyRingFile=PathToYourKeyRingFile ossrhUsername=your-jira-id 你在sonatype申請的賬號的用戶名 ossrhPassword=your-jira-password 你在sonatype申請的賬號的密碼生成GPG加密信息
windows中可以安裝gpg4win來生成相關信息。但是我個人在windows10中并沒有能夠打開。
所以我使用了WSL來生成相關信息。如果你的系統是Linux也可以。
執行gpg --gen-key, 按照提示的信息填入密碼,用戶名等信息,這些信息記錄下來。這里填入的密碼就是上面gradle.properties中的signing.password。
執行gpg --list-keys, 可以看到
/root/.gnupg/pubring.gpg pub 2048R/B98765 2018-12-08 uid sub 2048R/A123456
第一行便是對應的公鑰文件位置,pug后面的B98765便是public key Id,這個id也就是上面gradle.properties中的signing.keyId
執行 gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys B98765將公鑰發送到hkp://pool.sks-keyservers.net。
記錄下/root/.gnupg/中secring.png的位置,這個位置便是上面gradle.properties中的signing.secretKeyRingFile的值。
發布過程當上述步驟全部完成時,可以直接執行gradle uploadArchives。
發布Snapshot版本如果你的版本是snapshot的,你可以直接在https://oss.sonatype.org/content/repositories/snapshots中看到你的包。
發布Release版本如果你的版本是release版本。
登錄https://oss.sonatype.org/#welcome,選擇Staging Repositories,然后在右邊用groupId去搜索。
這樣會找到你的項目。選中你的項目close然后confirm。過一會再來尋找一次該構建,點擊Release在Confirm。過一會就應該能在https://oss.sonatype.org/content/groups/public中看到你的項目了。
這里Close可能觸發一些錯誤,可以點擊下方的Activity來查看錯誤的原因。一般來說,可能是并沒有javadoc和source導致的。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/72609.html
摘要:要從頭開始,請繼續使用構建。文件夾應包含項目運行單元測試的報告。由于該項目尚未進行任何單元測試,因此該報告無效。使用構建項目是啟動構建的首選方式。現在可用于構建項目。概要恭喜您現在已經創建了一個簡單而有效的構建文件,用于構建項目。 本指南將引導您使用Gradle構建一個簡單的Java項目。 你要構建什么 您將創建一個簡單的應用程序,然后使用Gradle構建它。 你需要什么 大約15分...
摘要:最近在學,嫌太重,就自己摸索了一下用部署開發環境的方法,比較適合輕度入門級以及對比較熟不想換編輯器的搞法。部署是家的構建系統工具,一般上用的更多些。 最近在學Java,嫌IDE太重,就自己摸索了一下用VScode部署Java開發環境的方法,比較適合輕度入門級、以及對比較熟VScode不想換編輯器的搞法。 部署JDK其實之前在大概1.5的時候就看過一點Java的東西,也裝過JDK還有...
摘要:物聯網平臺編譯一步到位物聯網平臺編譯一步到位簡介項目前置準備安裝安裝將放入本地緩存配置鏡像地址編譯運行物聯網平臺編譯一步到位先上編譯結果,耗時分秒簡介是一個開源物聯網平臺,可實現物聯網項目的快速開發管理和擴展。 ...
閱讀 3136·2021-11-11 16:54
閱讀 2291·2021-09-04 16:48
閱讀 3219·2019-08-29 16:08
閱讀 642·2019-08-29 15:13
閱讀 1344·2019-08-29 15:09
閱讀 2660·2019-08-29 12:45
閱讀 1926·2019-08-29 12:12
閱讀 444·2019-08-26 18:27