Spring Boot を使用しない依存関係の取得

Spring for Apache Pulsar を使用する場合は、Spring Boot を最初に使用するアプローチをお勧めします。ただし、Spring Boot を使用しない場合は、プロジェクト全体で一貫したバージョンのモジュールが使用されるように、提供された BOM を使用して依存関係を取得することをお勧めします。次の例は、MavenGradle の両方に対してこれを行う方法を示しています。

  • Maven

  • Gradle

pom.xml
<dependencyManagement>
	<dependencies>
		<!-- ... other dependency elements ... -->
		<dependency>
			<groupId>org.springframework.pulsar</groupId>
			<artifactId>spring-pulsar-bom</artifactId>
			<version>1.1.1</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>
build.gradle
plugins {
	id "io.spring.dependency-management" version "1.1.4"
}

dependencyManagement {
	imports {
		mavenBom 'org.springframework.pulsar:spring-pulsar-bom:1.1.1'
	}
}

通常、Spring for Apache Pulsar の依存関係の最小限のセットは次のようになります。

  • Maven

  • Gradle

pom.xml
<dependencies>
	<!-- ... other dependency elements ... -->
	<dependency>
		<groupId>org.springframework.pulsar</groupId>
		<artifactId>spring-pulsar</artifactId>
	</dependency>
</dependencies>
build.gradle
dependencies {
	implementation "org.springframework.pulsar:spring-pulsar"
}

追加の機能 (Reactive など) を使用する場合は、適切な依存関係も含める必要があります。

Spring for Apache Pulsar は Spring Framework 6.1.9 に対してビルドされますが、通常は Spring Framework 6.x の新しいバージョンで動作します。多くのユーザーは、Spring for Apache Pulsar の推移的な依存関係によって Spring Framework 6.1.9 が解決され、奇妙なクラスパスの問題が発生する可能性があるという事実に反発する可能性があります。これを解決する最も簡単な方法は、次のように dependencyManagement セクション内で spring-framework-bom を使用することです。

  • Maven

  • Gradle

pom.xml
<dependencyManagement>
	<dependencies>
		<!-- ... other dependency elements ... -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-framework-bom</artifactId>
			<version>6.1.9</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>
build.gradle
plugins {
	id "io.spring.dependency-management" version "1.1.4"
}

dependencyManagement {
	imports {
		mavenBom 'org.springframework:spring-framework-bom:6.1.9'
	}
}

上記の例は、Spring for Apache Pulsar のすべての推移的な依存関係が Spring 6.1.9 モジュールを使用することを保証します。