Maven (および Maven Eclipse Integration) を使用して、Eclipse で Java プロジェクトの依存関係を管理しています。Maven リポジトリーからの JAR ファイルの自動ダウンロード機能により、時間を大幅に節約できます。残念ながら、API ドキュメントとソース コードは含まれていません。
ソースと javadoc の添付ファイルも自動的に取得して Eclipse に適切に登録するように Maven を設定するにはどうすればよいですか?
Eclipse用のm2eclipseMavenプラグイン(逆の場合)でそれができると確信しています。ソースファイルとjavadocの両方を自動的にダウンロードするように設定できます。
これは、オプションを選択することで実現されWindow > Preferences > Maven and checking the "Download Artifact Sources" and "Download Artifact JavaDoc"
ます。
mvn eclipse:eclipse -DdownloadSources=true
また
mvn eclipse:eclipse -DdownloadJavadocs=true
または、Spencer K が指摘するように、両方のフラグを追加することもできます。
さらに、その=true
部分は不要なので、使用できます
mvn eclipse:eclipse -DdownloadSources -DdownloadJavadocs
この作業に関する他の回答ですが、コマンドライン引数を覚えておく必要がない場合は、downloadSourcesに追加し、pom.xmlのmaven-eclipse-pluginセクションにJavadocs構成をダウンロードすることもできます。
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
... other stuff ...
</configuration>
</plugin>
</plugins>
</build>
...
</project>
ソース/Javadoc ダウンロード設定をプロジェクトpom.xml
ファイルに含めたくないのは、これらがプロジェクト プロパティではなくユーザー設定であると感じているからです。代わりに、settings.xml
ファイルのプロファイルに配置します。
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<profiles>
<profile>
<id>sources-and-javadocs</id>
<properties>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>sources-and-javadocs</activeProfile>
</activeProfiles>
</settings>
を右クリックproject -> maven -> download sources
ソース jar がローカル リポジトリにあり、Eclipses Maven サポートを使用している場合、ソースは自動的にアタッチされます。を実行mvn dependency:sources
して、特定のプロジェクトのすべてのソース jar をダウンロードできます。ただし、ドキュメントで同じことを行う方法がわかりません。
あなたがメクリプスを使用している場合は
window --> maven --> Download Artifact Sources (select check)
(それでもソースの添付ウィンドウが表示される場合は、[ファイルの添付] ボタンをクリックして、ソースの添付ウィンドウを閉じます。次にソースを表示しようとすると、正しいソースが開きます)
これに答え、pom設定の例を含む同様の質問もあります。
私のバージョンのEclipse helios with m2Eclipseにはありません
window --> maven --> Download Artifact Sources (select check)
ウィンドウの下には「新しいウィンドウ」、「新しいエディター」、「パースペクティブを開く」などしかありません。
プロジェクトを右クリックしてから選択した場合maven--> download sources
何も起こりません。ソースがダウンロードされることも、pom ファイルが更新されることも、どのソースを尋ねるウィンドウがポップアップすることもありません。
eclipse の外で mvn xxx を実行するのは危険です - 一部のコマンドは m2ecilpse では機能しません - 私は一度それを行ってプロジェクト全体を失い、Eclipse を再インストールして最初からやり直さなければなりませんでした。
私はまだ、ecilpse と maven を取得して、servlet-api のような外部 jar のソースを見つけて使用する方法を探しています。
source/javadoc を含めるように maven-eclipse-plugin の pom を変更すると、新しい依存関係が pom に追加されます。既存の依存関係を申請する必要がある場合は、mvn dependency:sources を実行する必要があります。これをチェックしました。
pomのセットアップを使用することをお勧めします。
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
... other stuff ...
</configuration>
</plugin>
</plgins>
</build>
...
最初に、これでもjavadocとソースがアタッチされないと思いました(以前にその-DdownloadSourcesオプションで失敗したため)。
しかし、驚いたことに、POMバリアントを使用すると、.classpathファイルのソースとjavadocが添付されます。
ソースとjavadocをダウンロードするためにmaven-eclipseプラグインにpom構成を追加しましたが、既存のものではなく、新しい依存関係でそれが起こることを期待しています。
既存の依存関係については、パッケージ エクスプローラーで「Maven Dependencies」まで参照し、commons-lang-2.5.jar を右クリックして Maven | を選択しました。ソースをダウンロードしても... 何も起こらなかったようです (プログレス バーや、何かを実行しているという表示はありません)。ただし、commons-lang のソースにジャンプできるようになったため、ダウンロードされました。
Indigo (およびおそらく Helios) の場合、上記のチェックボックスは次の場所にあります。
Window -> Preferences -> Maven
私も同様の問題を抱えていましたが、私にとって最も効果的な解決策は、ソースをコンパイル済みコードと同じ jar に含めることでした (したがって、jar 内の特定のディレクトリにはFoo.java
との両方が含まれますFoo.class
)。Eclipse は自動的にソースをコンパイル済みコードに関連付け、ソースから JavaDoc を自動的に提供します。明らかに、アーティファクトを制御している場合にのみ役立ちます。
プロジェクト レベルまたはユーザー プロパティ レベルでプロパティを設定した後、Maven -> プロジェクトの更新 (強制更新) を実行してください。ソースをダウンロードします