簡體   English   中英

如何將 Android 庫發布到 Maven Central Gradle 7.2.0

[英]How to publish Android Library to Maven Central Gradle 7.2.0

我正在嘗試將我的第一個 android 庫上傳到 Maven Central,但是在經過一些研究后,我發現了一些鏈接,但它們也已經過時了,但 Gradle 7.2.0 沒有適當的文檔。

到目前為止我做過的事情:

  • 在jira上注冊
  • 批准了我的項目並獲得了 nexus 存儲庫管理器的訪問權限
  • 生成的 gpg 密鑰

現在來配置 gradle 文件:所以我遵循了這個庫 = https://github.com/vanniktech/gradle-maven-publish-plugin

  1. 在我提到的項目根 build.gradle 文件中
    buildscript {
        dependencies {
             classpath 'com.vanniktech:gradle-maven-publish-plugin:0.20.0' // NEW
             classpath 'org.jetbrains.dokka:dokka-gradle-plugin:1.4.10.2' // NEW
           }
       }
  1. 在庫 build.gradle 我添加了這個插件
    plugins {
        id 'com.android.library'
        id 'org.jetbrains.kotlin.android'
        id 'com.vanniktech.maven.publish' // NEW
    }
  1. 在項目根 gradle.properties 我寫了這個
SONATYPE_HOST=S01
RELEASE_SIGNING_ENABLED=true

GROUP=io.github.Darkprnce
POM_ARTIFACT_ID=InnerDrawer
VERSION_NAME=1.0.0

POM_NAME=InnerDrawer
POM_PACKAGING=aar

POM_DESCRIPTION=Inner Drawer is a highly customizable navigation drawer.
POM_INCEPTION_YEAR=2022

POM_URL=https://github.com/Darkprnce/InnerDrawer
POM_SCM_URL=https://github.com/Darkprnce/InnerDrawer
POM_SCM_CONNECTION=scm:git@github.com:Darkprnce/InnerDrawer.git
POM_SCM_DEV_CONNECTION=scm:git@github.com:Darkprnce/InnerDrawer.git

POM_LICENCE_NAME=MIT License
POM_LICENCE_URL=http://www.opensource.org/licenses/mit-license.php
POM_LICENCE_DIST=repo

POM_DEVELOPER_ID=Darkprnce
POM_DEVELOPER_NAME=Tarun Yadvendu
POM_DEVELOPER_URL=https://github.com/Darkprnce


signing.keyId=FCF8EDCA
signing.password=[my signing password]
signing.secretKeyRingFile=secret-keys.gpg
ossrhUsername=[my username]
ossrhPassword=[my password]
  1. 然后再次在庫 build.gradle 我提到了發布代碼
 publishing {
        repositories {
           maven {
              url = "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2"
              credentials {
                  username = ossrhUsername
                  password = ossrhPassword
               }
              }
             }
            }

現在出現了問題,當我在終端中運行此命令時,它給出了錯誤的憑據錯誤

* What went wrong:
Credentials required for this build could not be resolved.
> The following Gradle properties are missing for 'mavenCentral' credentials:
    - mavenCentralUsername
    - mavenCentralPassword

所以如果有人使用過這個庫,那么請幫助我,這個庫維護得很好,所以沒有問題,我只想知道正確的上傳方式。

akarnokd 的幫助下,我能夠將我的庫上傳到 Maven Central。 我為解決此問題而采取的步驟:

  1. 首先,我重命名了項目根目錄 => gradle.properties 中的屬性

ossrhUsername=[我的用戶名] ==> mavenCentralUsername ossrhPassword=[我的密碼] ==> mavenCentralPassword

  1. 現在每個人都可以使用上述信息,因為我們剛剛在 gradle 文件中提到了我們的用戶名和密碼,該文件將與代碼一起上傳。 所以為了防止這種情況, akarnokd建議我在 C:/users/darkprnce/.gradle/gradle.properties 中創建一個新的 gradle.properties 文件,並將以下信息放在該文件中:
mavenCentralUsername=[my username]
mavenCentralPassword=[my password]

signing.keyId=[last 8 digit of your key]
signing.password=[signing password]
signing.secretKeyRingFile=secring.gpg

  1. 我們可以從庫 build.gradle 文件中刪除發布,因為它已經包含在庫中。

  2. 運行命令

./gradlew publish --no-daemon --no-parallel

它會將庫上傳到 Maven Central,然后您可以關閉存儲庫並釋放它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM