2

私は、Eclipse IDE (3.6) を使用して Java (1.6) で記述された Web アプリ プロジェクトに取り組んでおり、Jetty (8.0.4) を Web サーバーおよびサーブレット コンテナーとして使用することにしました。依存関係とビルド管理に maven (2) を使用しています。手始めに、簡単なテスト アプリケーションを作成して、エンド ツー エンドで動作することを確認することにしました。これは正常に機能しており、サーバーを起動していくつかの単純なサーブレットを作成できます。ただし、ソースと Javadoc jar は Maven によってダウンロードされていないため、マウスをメソッド名またはクラスの上に置いても、ドキュメントは見つかりません。次のように報告するだけです。

Open Declaration javax.servlet.http.HttpServletResponse 注: この要素にはソースも Javadoc も添付されていないため、Javadoc が見つかりませんでした。

これを行う方法を検索しましたが、見つけることができたのは、ソースモジュールをダウンロードするようにmavenを構成する方法を説明しているEclipse Webサイトのこのページだけでした。ソース モジュール jar は、バイナリ jar と同じ名前で、接尾辞 "-sources" が付いていることが示されています。次のように、ソース モジュールの依存関係を各バイナリ モジュールの Maven 構成に追加しました。

<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-server</artifactId>
    <version>${jettyVersion}</version>
</dependency>

<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-server-sources</artifactId>
    <version>${jettyVersion}</version>
</dependency>

ただし、maven はソース モジュールの依存関係を見つけることができませんでした。

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Jetty Servlet Example 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-server-sources/8.0.4.v20111024/jetty-server-sources-8.0.4.v20111024.pom
[WARNING] The POM for org.eclipse.jetty:jetty-server-sources:jar:8.0.4.v20111024 is missing, no dependency information available
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-servlet-sources/8.0.4.v20111024/jetty-servlet-sources-8.0.4.v20111024.pom
[WARNING] The POM for org.eclipse.jetty:jetty-servlet-sources:jar:8.0.4.v20111024 is missing, no dependency information available
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util-sources/8.0.4.v20111024/jetty-util-sources-8.0.4.v20111024.pom
[WARNING] The POM for org.eclipse.jetty:jetty-util-sources:jar:8.0.4.v20111024 is missing, no dependency information available
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-server-sources/8.0.4.v20111024/jetty-server-sources-8.0.4.v20111024.jar
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-servlet-sources/8.0.4.v20111024/jetty-servlet-sources-8.0.4.v20111024.jar
Downloading: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util-sources/8.0.4.v20111024/jetty-util-sources-8.0.4.v20111024.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.098s
[INFO] Finished at: Sun Apr 15 15:42:59 PDT 2012
[INFO] Final Memory: 5M/180M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project hello-world: Could not resolve dependencies for project org.example:hello-world:jar:0.1-SNAPSHOT: The following artifacts could not be resolved: org.eclipse.jetty:jetty-server-sources:jar:8.0.4.v20111024, org.eclipse.jetty:jetty-servlet-sources:jar:8.0.4.v20111024, org.eclipse.jetty:jetty-util-sources:jar:8.0.4.v20111024: Could not find artifact org.eclipse.jetty:jetty-server-sources:jar:8.0.4.v20111024 in central (http://repo1.maven.org/maven2) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

Jetty のソースと javadoc をダウンロードするように Maven を構成する方法についての指針はありますか?

4

1 に答える 1

3

次の Maven コマンドを使用して、Eclipse プロジェクトを再作成してみてください。

mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

別のオプションは、pom.xml を更新することです。

<plugin>
    <artifactId>org.eclipse.jetty</artifactId>
    <version>${jettyVersion}</version>
    <configuration>
        <downloadSources>true</downloadSources>
        <downloadJavadocs>true</downloadJavadocs>
    </configuration>
</plugin>

どちらのソリューションも、ダウンロード元のリポジトリにソースと javadoc が提供されている場合にのみ機能します。

あなたの場合 (およびあなたのバージョン) では、Jetty リポジトリでsources.jarを見つけることができるため、動作するはずです。

于 2012-04-16T02:59:19.050 に答える