使用 Maven 總和檢查碼和快照 - Amazon CodeCatalyst

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Maven 總和檢查碼和快照

下列各節說明如何在 中使用 Maven 總和檢查碼和 Maven 快照 CodeCatalyst。

使用 Maven 總和檢查碼

當 Maven 套件發佈至 CodeCatalyst 套件儲存庫時,與套件中每個資產或檔案相關聯的檢查總和會用來驗證上傳。資產的範例包括 jarpom war 檔案。對於每個資產,Maven 套件包含多個總和檢查碼檔案,這些檔案使用資產名稱搭配額外的延伸,例如 md5sha1。例如,名為 的檔案的總和檢查碼檔案my-maven-package.jar可能是 my-maven-package.jar.md5my-maven-package.jar.sha1

每個 Maven 套件也包含一個maven-metadata.xml檔案。必須上傳此檔案,發佈才能成功。如果在上傳任何套件檔案期間偵測到總和檢查碼不相符,發佈會停止。這可能會maven-metadata.xml阻止上傳 。發生這種情況時,Maven 套件的狀態會設為 Unfinished。您無法下載屬於具有此狀態之套件一部分的資產。

當您發佈 Maven 套件時,如果檢查總和不相符,請記住下列事項:

  • 如果在maven-metadata.xml上傳之前發生總和檢查碼不相符,則套件的狀態不會設定為 Unfinished。套件不可見,且無法取用其資產。發生這種情況時,請嘗試下列其中一項,然後嘗試再次下載資產。

    • 執行再次發佈 Maven 套件的命令。如果網路問題在下載期間損毀總和檢查碼檔案,則可能適用。如果已解決重試的網路問題,總和檢查碼會相符且下載成功。

    • 如果重新發佈 Maven 套件無法運作,請刪除套件,然後重新發佈套件。

  • 如果在maven-metadata.xml上傳之後發生總和檢查碼不相符,套件的狀態會設為 Published。您可以取用套件中的任何資產,包括檢查總和不相符的資產。當您下載資產時, 產生的總和檢查碼 CodeCatalyst 會與其一起下載。如果下載的檔案與總和檢查碼不相符相關聯,則其下載的總和檢查碼可能與發佈套件時上傳的總和檢查碼不相符。

使用 Maven 快照

Maven 快照是 Maven 套件的特殊版本,其參考最新的生產分支程式碼。這是最終版本之前的開發版本。您可以透過SNAPSHOT附加到套件版本的字尾來識別 Maven 套件的快照版本。例如, 版本的快照1.11.1-SNAPSHOT。如需詳細資訊,請參閱 Apache Maven Project 網站上的什麼版本SNAPSHOT?

CodeCatalyst 支援發佈和使用 Maven 快照。您可以將 Maven 快照發佈至 CodeCatalyst 儲存庫,或者,如果您直接連線至上游儲存庫。不過,不支援套件儲存庫及其其中一個上游儲存庫中的快照版本。例如,如果您將版本為 的 Maven 套件上傳1.2-SNAPSHOT到套件儲存庫, CodeCatalyst 不支援將具有相同快照版本的 Maven 套件上傳到其其中一個上游儲存庫。此案例可能會傳回無法預測的結果。

發佈 Maven 快照時,其先前版本會保留在稱為建置 的新版本中。每次發佈 Maven 快照時,都會建立新的建置版本。快照的所有先前版本都會保留在其建置版本中。發佈 Maven 快照時,其狀態會設為 ,Published而包含先前版本的建置狀態會設為 Unlisted

如果您請求快照,Published則會傳回狀態為 的版本。這始終是 Maven 快照的最新版本。您也可以請求特定建置快照。

若要刪除 Maven 快照的所有建置版本,請使用 CodeCatalyst 主控台。