Pom には、A と B という 2 つの依存関係があります。A と B の両方が、アーティファクト C (cassandra-all) に推移的な依存関係を持っています。A と B は C の異なるバージョンを使用します。依存関係 A はアーティファクトastyanaxです。
B に付属している Cのバージョン
を維持したいのですが、A (Astyanax) に C の除外を追加することで実現しました。
残念ながら、B のスコープを「テスト」にしたいと考えています。これは、A を除外すると、C がテスト範囲外に含まれないことを意味します。
どうすればこれを解決できますか? 特定のスコープのみを除外できますか? または、推移的な依存関係に使用するバージョンを指定できますか?
例:
これが私の pom の外観です。
アーティファクト C (cassandra-all と呼ばれる) への依存を除外したアーティファクト A (astyanax)
<dependency>
<groupId>com.netflix.astyanax</groupId>
<artifactId>astyanax</artifactId>
<version>1.0.4</version>
<exclusions>
<exclusion>
<groupId>org.apache.cassandra</groupId>
<artifactId>cassandra-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.cassandraunit</groupId>
<artifactId>cassandra-unit</artifactId>
<version>1.1.1.1</version>
<scope>test</scope>
</dependency>
具体的には、テスト スコープ外でコードを実行し、cassandraunit テストのみのスコープを維持する場合、どうすれば cassandra-all を含めることができますか?