MavenリポジトリーでソースJARを見つけることができるかどうか、誰かが何か考えを持っていますか?
MavenリポジトリーでソースJARを見つけることができるかどうか、誰かが何か考えを持っていますか?
回答:
Maven Micro-Tip:ソースとJavadocを入手してください
IDEでMavenを使用している場合、IDEがライブラリの依存関係のソースコードとJavadocを解決する必要があることがよくあります。その目標を達成する簡単な方法があります。
mvn dependency:sources mvn dependency:resolve -Dclassifier=javadoc
最初のコマンドは、pomファイルの各依存関係のソースコードをダウンロードしようとします。
2番目のコマンドは、Javadocのダウンロードを試みます。
Mavenは、ここでライブラリパッケージャーに翻弄されています。そのため、それらのいくつかはパッケージ化されたソースコードを持たず、それらの多くはJavadocを持ちません。
依存関係がたくさんある場合は、包含/除外を使用して特定のアーティファクトを取得することもお勧めです。たとえば、次のコマンドは、特定のArtifactIdを持つ依存関係のソースのみをダウンロードします。
mvn dependency:sources -DincludeArtifactIds=guava
出典:http : //tedwise.com/2010/01/27/maven-micro-tip-get-sources-and-javadocs/
ドキュメント:https : //maven.apache.org/plugins/maven-dependency-plugin/sources-mojo.html
mvn dependency:resolve -Dclassifier=javadoc
IntelliJ IDEAがjavadocsに自動的に気づいた後、これはとても素晴らしいです。
maven-eclipseプラグインの構成と実行(例えば、コマンドラインからmvn eclipse:eclipse
)
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
</plugins>
</build>
mvn eclipse:eclipse
これをPOMファイルに追加すると、実行時にソースとドキュメントがダウンロードされるということですか?
M2_REPO
通常のjarと同じ場所に、xxxx-yy-sources.jar としてjarとしてダウンロードされます。ライブラリのxxxx-yy jarのソースコードとして添付されます
プロジェクトがプロジェクトソースのjarを作成し、それをmavenリポジトリーにデプロイすると、それが見つかります:)
参考までに、ソースアーティファクトは通常、maven-source-pluginによって作成されます。このプラグインは、プロジェクトのメインまたはテストソースをjarアーカイブにバンドルできます。ソースプラグインの構成で説明されています。
(...)生成されたjarファイル
finalName
は、メインのソースである場合、プラス「-sources」の値によって名前が付けられます。それ以外の場合finalName
は、テストソースの場合は「-test-sources」がプラスされます。
アーティファクト(ここでは「-sources」または「-test-sources」)を説明するために追加されたテキストは、分類子と呼ばれます。
分類子を使用するアーティファクトへの依存関係を宣言するには、<classifier>
要素を追加するだけです。例えば:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.7.ga</version>
<classifier>sources</classifier>
</dependency>
通常、これを行わないことに注意してください。ほとんどのIDEは、依存関係を明示的に宣言せずに、メインアーティファクトからソース(またはJavaDoc)をダウンロードするためのサポートを提供します。
最後に、一部のリポジトリ検索エンジンでは、分類子を使用してアーティファクトを検索できることにも注意してください(少なくともNexusは高度な検索でできます)。たとえば、この検索を参照してください。
IntelliJ Idea のmaven ideaプラグインを使用すると、ソースとJavaドキュメントを解決してダウンロードするかどうかを指定できます
mvn idea:idea -DdownloadSources=true -DdownloadJavadocs=true
特定のソースまたはjavadocをダウンロードするには、GroupIdsを含める必要があります-以下に示すように、カンマ区切りの値です
mvn dependency:sources -DincludeGroupIds=com.jcraft,org.testng -Dclassifier=sources
分類子はカンマ区切りではないことに注意してください。javadocをダウンロードするには、分類子をjavadocとして上記のコマンドをもう一度実行する必要があります。
mvn dependency:sources -DincludeGroupIds=com.jcraft,org.testng -Dclassifier=javadoc
アーティファクトをダウンロードするには
mvn dependency:get -Dartifact=groupId:artifactId:version:packaging:classifier
Groovyソースの場合、これは
mvn dependency:get -Dartifact=org.codehaus.groovy:groovy-all:2.4.6:jar:sources
Groovyのjavadocの場合は、
mvn dependency:get -Dartifact=org.codehaus.groovy:groovy-all:2.4.6:jar:javadoc
これにより、指定されたアーティファクトがローカルのMavenリポジトリ(通常は)に配置されます$HOME/.m2/repository
。
dependency:sources
プラグインソースやプラグイン内で定義された依存関係のソースではなく、プロジェクトの依存関係のソースをダウンロードするだけです。
あなたはこの関連する質問で情報を見つけることができます:Eclipse
Mavenプラグインを使用する場合はMaven管理の依存関係のEclipseに添付されたソースjarファイルを取得し、次に 'mvn eclipse:eclipse -DdownloadSources = true'を使用します
Eclipseを使用している場合は、(設定)>(Maven)を開き、(アーティファクトソースのダウンロード)を選択することもできます。これにより、pom.xmlがそのまま残り、ソースまたはJavaドキュメント(選択されている場合)がマシンの場所での開発用に保持されます〜/ .m2
NetBeans 8 Mavenの主導のプロジェクトで、単にあなたが関心のある依存関係のjarファイルのリスト項目をコンテキスト・クリックします。を選択しDownload Sources
ます。しばらくお待ちください。NetBeansは、ソースコードが利用可能な場合、自動的にダウンロードしてインストールします。
同様Download Javadoc
に、ドキュメントをローカルにインストールすることを選択できます。次に、エディターでコードをコンテキストクリックして、JavaDocを表示するように選択できます。
Eclipse(Kepler)でのMavenコンソールの監視に基づいて、ソースがまだダウンロードされていないエディターでMaven依存関係からクラスを開こうとすると、Maven依存関係のソースが自動的にダウンロードされます。これは、すべての依存関係のソースを取得する必要はないが、事前に必要な依存関係がわからない場合(およびEclipseを使用している場合)に便利です。
私が使用して終了GabrielRamierezのアプローチ@が、採用されますPascalThiventのアプローチ@前進します。
あなたが知っている場合のgroupIdとaritifactIdを、次のようにダウンロードURLを生成することができます。
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
http://central.maven.org/maven2/ch/qos/logback/logback-classic/
Mavenリポジトリは、ソースjarをダウンロードする簡単な方法を提供します。
「spring-boot-actuator-autoconfigure」のデモで説明します。
それ以外の場合は、githubからリポジトリを「git clone」して、特定のコードを取得できます。
他の人が説明しているように、「mvn dependency:sources」コマンドを使用して、使用している依存関係のソースjarを取得および生成できます。
注:一部の依存関係にはsources.jarがありません。これらにはソースコードが含まれておらず、pomファイルが含まれているためです。例:spring-boot-starter-actuator。この場合のように:
スターターPOMは、アプリケーションに含めることができる便利な依存関係記述子のセットです。サンプルコードを探して依存関係記述子のロードをコピーして貼り付ける必要なしに、必要なすべてのSpringおよび関連テクノロジのワンストップショップを利用できます。
リファレンス:Spring Boot Startersの概要