一種のライブラリプロジェクトであるプロジェクトを作成するとします(プロジェクトは依存関係を集約します)。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.packt</groupId>
<artifactId>axis2-client</artifactId>
<version>1.0.0</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-kernel</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-adb</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-transport-http</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-transport-local</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-xmlbeans</artifactId>
<version>1.6.2</version>
</dependency>
</dependencies>
</project>
別のプロジェクトは、ライブラリプロジェクトを依存関係として使用しています。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.packt</groupId>
<artifactId>my-axis2-client</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>com.packt</groupId>
<artifactId>axis2-client</artifactId>
<version>1.0.0</version>
<type>pom<type>
</dependency>
</dependencies>
</project>
私は、このユースケースがあることを前提と考える私の-axis2のクライアントがで依存関係を使用していますaxis2のクライアントの直接依存関係として。つまり、my-axis2-clientでorg.apache.axis2.client.ServiceClient(in axis2-kernel-1.6.2.jar)クラスを使用できるということです。ただし、を実行mvn dependency:anlyze
すると、次の結果が生成されます。
[WARNING] Used undeclared dependencies found:
[WARNING] org.apache.axis2:axis2-kernal:jar:1.6.2:compile
[WARNING] Unused declared dependencies found:
[WARNING] compackt:axis2-client:pom:1.0.0:compile
これは有効な警告ではないと思います。この場合、依存関係を分析する方法があるかどうか教えてください。
構築では、結果として生じる依存関係は推移的であり、直接的なものではありません。POMに依存し、POM自体はjarに依存します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加