0

JGitの最新バージョンをビルドしようとしています。Git リポジトリから最新バージョンをチェックアウトしました。ビルド手順に従って依存関係を Orbit 経由でインストールしました。次に、mvn clean installすべてをコンパイルしてすべてのテストを実行することができた実行しました。これは素晴らしいことで、エラーはなく、コンパイルされた .jar ファイルを見つけることができました。

次に、Eclipse を開き、プロジェクトをワーキング セットにインポートしました。何らかの理由で、ビルド プロセスで多数のエラーが発生します。

インポートを解決できません:

import org.apache.commons.compress.archivers.ArchiveOutputStream;
import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
import org.apache.commons.compress.archivers.tar.TarConstants;
import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;

さらに解決できません:

import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Response;

Eclipse経由でJettyをインストールしてみました(Install New Software)。ただし、それで問題は解決しませんでした。

Eclipse で JGit をビルドするべきではないのでしょうか? すべてのビルドとテストは Maven で行う必要がありますか? また、なぜ Jetty と Apache が JGit のこれらのサブプロジェクトの一部にインポートされており、それらが wiki で JGit の依存関係としてリストされていないのかについても混乱しています。

前もって感謝します。

4

2 に答える 2

1

依存関係をインストールする最も簡単な方法は、ターゲット プラットフォームの使用 で説明されているように、ターゲット プラットフォームの 1 つを使用することです。これには、すべての依存関係が含まれます。

Orbit P2 リポジトリからのインストールに関しては、そこにあるリストは不完全でした。「Apache Commons Compress」もインストールする必要があります。更新された手順を参照してください。

http://wiki.eclipse.org/EGit/Contributor_Guide#Option_2:_Install_from_Orbit_P2_Repository

Jetty は Orbit からはインストールできません。手順については、こちらを参照してください。

http://wiki.eclipse.org/EGit/Contributor_Guide#JGit_HTTP_Tests

または、Jetty も含まれているターゲット プラットフォームを使用します。

于 2013-02-01T11:55:00.070 に答える
1

Jetty および Compress ライブラリは JGit インフラストラクチャの一部で使用されますが、Eclipse での EGit サポートには JGit のすべてが必要というわけではありません。

たとえば、JGit は、Eclipse では使用されない一連のコマンドライン プログラム (jgit init、jgit add など) も提供します。そのため、MAven から 'pgm' モジュールをビルドする必要がありますが、それ自体は Eclipse の UI である EGit では使用されません。同様に、JGit HTTP サーバーは便利ですが、EGit 操作には必須ではありません。

アーカイバーは、「jgit アーカイブ」の pgm モジュールを介してツールを抽出するために使用されていると思います。これは、ブランチのコンテンツを抽出し、その場で Zip または TGZ ファイルを生成します。

pgm モジュールが必要ない (または必要ない) 場合 (そして、おそらく iplog も回避することをお勧めします) は、pom.xml ファイル内のモジュールのリストからそれらのコメントを外すことができます。pgm モジュールと一緒に http.server (および http.test) を削除すると、おそらく、Jetty および Apache 圧縮モジュールを必要とせずにコンパイルできるようになります。

于 2013-01-30T23:23:27.897 に答える