1. ホーム
  2. java

[解決済み] javax.jms.* クラスの正しい Maven 依存関係は何ですか?

2022-02-15 06:46:17

質問内容

をインポートする必要があります。 javax.jms.* クラスがあります。Mavenプロジェクトに含めるべき正しい依存関係は何ですか?私は javax.jms:jms:1.1 しかし、うまくいきません(jarではなくpomです)。

ps. 今のところ見つけた唯一の回避策は javax:javaee-api:6.0 (Mavenセントラルより)。

解決方法は?

ActiveMQやQpid JMSのような他のプロジェクトでは、Apache Geronimo JARsからJMS仕様クラスを取り込みますが、1.1のAPIはこの依存関係で利用できます。

  <dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-jms_1.1_spec</artifactId>
    <version>1.1.1</version>
  </dependency>

JMS 2のAPIについては、別の依存関係を使用する必要があります。

  <dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-jms_2.0_spec</artifactId>
    <version>1.0-alpha-2</version>
  </dependency>

これらは両方とも Apache 2.0 ライセンスの依存ファイルです。

他の方が指摘されているように、Apacheライセンスではない別のオプションはこちらです。

<dependency>
    <groupId>javax.jms</groupId>
    <artifactId>javax.jms-api</artifactId>
    <version>2.0.1</version>
</dependency>