回答:
pom.xmlのみで単純なプロジェクトを作成します。依存関係を追加して実行します。
mvn dependency:tree
残念ながら、依存関係mojoはpom.xmlを使用する必要があります。そうしないと、次のエラーが発生します。
mojo:ツリーを実行できません。既存のpom.xmlを含むプロジェクトが必要ですが、ビルドはそれを使用していません。
依存関係は、アーティファクトのpom.xmlに記述されています。Mavenインフラストラクチャを使用してそれを見つけます。
http://search.maven.org/に移動し、groupIdとArtifactIdを入力します。
または、http://repo1.maven.org/maven2/に移動し、最初にプラグインのgroupIdを使用してナビゲートし、後でArtifactIdを使用して、最後にそのバージョンを使用することもできます。
たとえば、org.springframework:spring-coreを参照してください
依存関係アーティファクトの一部はpom.xmlです。それは依存関係を指定します。そして、このpomでmvn dependency:treeを実行できます。
pom.xml
ファイルを含むプロジェクト)の場合、エラーが発生する可能性があります。してみてくださいmvn compile dependency:tree
。
サンプルプロジェクトを作成し、それにサードパーティの依存関係を追加する必要がある場合は、次のコマンドを実行して、依存関係の完全な階層を確認できます。
次のmavenコマンドを使用して、特定のアーティファクトを検索できます。
mvn dependency:tree -Dverbose -Dincludes=[groupId]:[artifactId]:[type]:[version]
ドキュメントによると:
各パターンセグメントはオプションであり、完全および部分的な*ワイルドカードをサポートしています。空のパターンセグメントは、暗黙のワイルドカードとして扱われます。
プロジェクトのさまざまなモジュールから「log4j-1.2-api」jarファイルを見つけようとしていると想像してください。
mvn dependency:tree -Dverbose -Dincludes=org.apache.logging.log4j:log4j-1.2-api
詳細については、こちらをご覧ください。
編集:verboseパラメーターを使用する利点にもかかわらず、条件によってはそれほど正確でない場合があることに注意してください。これは、Maven 2アルゴリズムを使用しており、Maven 3で使用すると誤った結果をもたらす可能性があるためです。
-Dverbose
必要なツリー全体を表示するには十分でした 出力をパイプless
または類似してやってあなたは覚えていない場合、クイック検索は素晴らしい作品includes
フラグまたは完全またはワイルドカードを使っ提供したくないgroupId
:)を
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.8:tree (default-cli): Goal requires a project to execute but there is no POM in this directory (...). Please verify you invoked Maven from the correct directory. -> [Help 1]
解決策は、artifactのpom.xmlファイルを使用してdependency:treeを呼び出すことです。
mvn -f "$HOME/.m2/repository/$POM_PATH" dependency:tree
リポジトリのアーティファクトの推移的な依存関係を一覧表示する方法も参照してください。
m2eclipseの現在のバージョンを使用している場合(eclipseとmavenを使用している場合は、これを使用する必要があります):
メニューエントリを選択します
Navigate -> Open Maven POM
探しているアーティファクトを入力します。
pomがpomエディターで開きます。ここDependency Hierarchy
からタブを選択して、依存関係の階層を表示できます(名前が示すとおり:-))。
アーティファクトが特定のプロジェクトの依存関係ではない場合、最善の策はリポジトリ検索エンジンを使用することです。それらの多くは、特定のアーティファクトの依存関係を記述しています。
私はこの投稿がかなり古いことを知っていますが、IntelliJを使用している人が依存関係ツリーをIDEで直接見たい場合は、Maven Helperプラグインプラグインをインストールできます。
インストールしたらpom.xmlを開くと、以下のような依存関係分析タブが表示されます。また、競合している依存関係のみをツリー構造として表示するオプションも提供します。