1. 概要

この記事では、プロジェクトでSpringアーティファクトを使用するときに使用するMavenリポジトリを示します。Springwikiのリポジトリの完全なリストを参照してください。 以前のSpringSourceアーティファクト管理インフラストラクチャはmaven.springframework.orgでしたが、現在は廃止され、より強力なrepo.spring.ioが採用されています。

2. Mavenリリース

すべてのGA/リリースアーティファクトはMavenCentralに公開されるため、リリースのみが必要な場合は、pomに新しいリポジトリを追加する必要はありません。 ただし、何らかの理由でCentralが利用できない場合は、SpringReleasesでも利用可能なカスタムのbrowsableMavenリポジトリがあります。

<repositories>
    <repository> 
        <id>repository.spring.release</id> 
        <name>Spring GA Repository</name> 
        <url>http://repo.spring.io/release</url> 
    </repository>
</repositories>

Springアーティファクトのバージョン管理ルールは、プロジェクトwiki説明されています。

マイルストーンとスナップショットはMavenCentralに直接公開されないため、これらには独自のリポジトリがあります。

3. Mavenのマイルストーンとリリース候補

マイルストーンとRCの場合、次のリポジトリをpomに追加する必要があります。

<repositories>
    <repository> 
        <id>repository.spring.milestone</id> 
        <name>Spring Milestone Repository</name> 
        <url>http://repo.spring.io/milestone</url> 
    </repository>
</repositories>

このリポジトリが定義されると、プロジェクトはSpringマイルストーン依存関係の使用を開始できます。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.2.0.RC3</version>
</dependency>

4. Mavenスナップショット

マイルストーンと同様に、Springスナップショットはカスタムリポジトリでホストされます。

<repositories>
    <repository> 
        <id>repository.spring.snapshot</id> 
        <name>Spring Snapshot Repository</name> 
        <url>http://repo.spring.io/snapshot</url> 
    </repository>
</repositories>

pomでリポジトリが有効になると、プロジェクトはSpringスナップショットの使用を開始できます。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.2.5.BUILD-SNAPSHOT</version>
</dependency>

そしてさえ:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.3.0.BUILD-SNAPSHOT</version>
</dependency>

スナップショットリポジトリも参照できるようになりました。

5. SpringOSGIのMavenリポジトリ

OSGI互換のSpringアーティファクトは、SpringSource Enterprise Bundle Repository 、つまりEBRで維持されます。 これらのリポジトリには、Spring Framework全体の有効なOSGIバンドルとライブラリ、およびこれらのライブラリの依存関係の完全なセットが含まれています。 バンドルの場合:

<repository>
    <id>com.springsource.repository.bundles.release</id> 
    <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name> 
    <url>http://repository.springsource.com/maven/bundles/release</url> 
</repository>

<repository> 
    <id>com.springsource.repository.bundles.external</id> 
    <name>SpringSource Enterprise Bundle Repository - External Bundle Releases</name> 
    <url>http://repository.springsource.com/maven/bundles/external</url> 
</repository>

また、OSGI互換ライブラリの場合:

<repository>
    <id>com.springsource.repository.libraries.release</id>
    <name>SpringSource Enterprise Bundle Repository - SpringSource Library Releases</name>
    <url>http://repository.springsource.com/maven/libraries/release</url>
</repository>
<repository>
    <id>com.springsource.repository.libraries.external</id>
    <name>SpringSource Enterprise Bundle Repository - External Library Releases</name>
    <url>http://repository.springsource.com/maven/libraries/external</url>
</repository>

注: SpringSource EBRは読み取り専用になり、SpringFramework3.2.xの今後のリリースは公開されません。

6. 結論

この記事では、リリース候補、マイルストーン、スナップショットを使用するために、pomでSpring固有のMavenリポジトリを設定するための実用的な情報について説明します。