

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Maven チェックサムとスナップショットを使用する
<a name="packages-maven-checksums-snapshots"></a>

以下のセクションでは、CodeCatalyst で Maven チェックサムと Maven スナップショットを使用する方法を説明します。

## Maven チェックサムの使用
<a name="maven-checksums"></a>

 Maven パッケージを CodeCatalyst パッケージリポジトリに公開すると、それぞれの*アセット*に関連付けられたチェックサムまたはパッケージ内のファイルを使用して、アップロードの検証が行われます。アセットの例は、*[jar]*、*[pom]* および *[war]* ファイルです。各アセットに対して、Maven パッケージには、アセット名に `md5` や `sha1` など追加の拡張子をつけた複数のチェックサムファイルが含まれています。例えば、`my-maven-package.jar` という名前のファイルのチェックサムファイルは `my-maven-package.jar.md5` および `my-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 スナップショットを使用する
<a name="maven-snapshots"></a>

 Maven *スナップショット* は、最新のプロダクションブランチコードを参照する Maven パッケージの特別なバージョンです。これは最終リリース版に先行する開発版です。Maven パッケージのスナップショットバージョンは、パッケージバージョンに追加されているサフィックス `SNAPSHOT` で識別できます。例えば、バージョン `1.1` のスナップショットは `1.1-SNAPSHOT` です。詳細については、Apache Maven プロジェクトウェブサイト上の [スナップショットバージョンとは何ですか？](https://maven.apache.org/guides/getting-started/index.html#What_is_a_SNAPSHOT_version) を参照してください。

 CodeCatalyst では、Maven スナップショットの公開と使用をサポートしています。Maven スナップショットは、CodeCatalyst リポジトリに公開できます。または、直接接続している場合は、アップストリームリポジトリに公開できます。ただし、パッケージリポジトリとそのアップストリームリポジトリの両方に 1 つのスナップショットバージョンを公開することはできません。例えば、バージョン `1.2-SNAPSHOT` を持つ Maven パッケージをパッケージリポジトリにアップロードした場合、CodeCatalyst では、同じスナップショットバージョンを持つ Maven パッケージを、アップストリームリポジトリの１つにアップロードすることはできません。この場合、予測不可能な結果が返される可能性があります。

 Maven スナップショットが公開されると、その前のバージョンは、*ビルド* という新しいバージョンに保存されます。Maven スナップショットが公開されるたびに、新しいビルドバージョンが作成されます。スナップショットの以前のバージョンはすべて、ビルドバージョンで保持されます。Maven スナップショットが公開されると、そのステータスは `Published` に設定され、前のバージョンを含むビルドのステータスは `Unlisted` に設定されます。

 スナップショットをリクエストすると、ステータス `Published` を持つバージョンが返されます。これは常に Maven スナップショットの最新バージョンです。スナップショットの特定のビルドをリクエストすることもできます。

Maven スナップショットのすべてのビルドバージョンを削除するには、CodeCatalyst コンソールを使用します。