使用 Gradle 發佈 Maven 成品

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

在本文中,您將瞭解如何連線到 Azure Artifacts 摘要,並使用 Gradle 發佈 Maven 成品。

必要條件

專案設定

設定專案之前,請確定您已安裝 Gradle,並將 Maven 設定 外掛程式新增至 build.gradle 檔案,如下所示:

plugins {
  id "net.linguica.maven-settings" version "0.5"
}

建立個人存取權杖

  1. 登入您的 Azure DevOps 組織,然後瀏覽至您的專案。

  2. 選取 [ 用戶設定],然後選取 [ 個人存取令牌]。

    顯示如何建立個人存取令牌的螢幕快照

  3. 選取 [ 新增令牌],然後填寫必要的欄位。 請確定您選取 [ 封裝>讀取和寫入 範圍]。

  4. 完成之後,請選取 [建立]。 複製您的令牌,並將其儲存在安全的位置。

    此螢幕快照顯示如何使用封裝讀取和寫入範圍來建立新的個人存取令牌。

設定 build.gradle

  1. 如果您的專案根目錄中沒有 build.gradle 檔案,請建立新的檔案並將其命名為:build.gradle

  2. 將下列區段新增至存放publishing.repositories 容器中的 build.gradle 檔案。

    maven {
        url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
        name '<FEED_NAME>'
        authentication {
            basic(BasicAuthentication)
        }
    }
    
  3. 以下是 build.gradle 檔案看起來應該像的範例

    publishing { 
        publications { 
            myPublication(MavenPublication) { 
                groupId '<GROUP_ID>' 
                artifactId '<ARTIFACT_ID>' 
                version '<VERSION_NUMBER>'           
                artifact '<PATH_TO_YOUR_JAR_FILE>'   
            } 
        } 
    
        // Repositories to publish artifacts 
        repositories { 
            maven {
                url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
                name '<FEED_NAME>'
                authentication {
                    basic(BasicAuthentication)
                }
            }
        } 
    } 
    
    // Repositories to fetch dependencies
    repositories { 
            maven {
                url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
                name '<FEED_NAME>'
                authentication {
                    basic(BasicAuthentication)
                }
            }
    } 
    

設定settings.xml

  1. 在主目錄中開啟您的settings.xml檔案,並新增下列代碼段。 將佔位元取代為您先前建立的摘要名稱、組織名稱和個人存取令牌。

    <server>
        <id>[FEED_NAME]</id>
        <username>[ORGANIZATION_NAME]</username>
        <password>[PERSONAL_ACCESS_TOKEN]</password>
    </server>
    

發佈成品

在提升許可權的命令提示字元中執行下列命令,將您的套件發佈至摘要。 您的新套件將會命名為: groupId:artifactId

gradle publish