1

(バグ修正の利点を得るために) HEAD から構築したい機能が git.eclipse.org にあることがわかりました。以前はソースからいくつかの Eclipse 機能をビルドするのは少し難しいものでしたが、Maven を使用するため、それを簡単にすることになっている Tycho があります。幸いなことに、この機能は既に Tycho と Maven を使用するように設定されていることがわかりました。

しかし、エンドユーザーとして Tycho を使用する方法は明確ではありません。「クリーン インストール」をゴールとして Maven ビルドを実行しようとしましたが、失敗しました。

Tycho ビルドを実行する方法について、完全な手順を順を追って説明してください。ビルドするプロジェクトのソース コード チェックアウトから始まり、必要なソフトウェアのインストールを含め、必要な機能を備えた Eclipse を実行して終了します。

また、Eclipse 内でプラグインのソース コードに変更を加えたい場合はどうすればよいでしょうか。それは、別のビルド方法を使用する必要があるということですか?


参考までに、これは上記の一般的な質問につながる具体的な問題です: 機能を構築しようとしましたorg.eclipse.linuxtools/systemtap/org.eclipse.linuxtools.systemtap-featureが、systemtapプラグインを兄弟ディレクトリにチェックアウトしました (それらは同じ git リポジトリの一部であるため、無料で入手できます)。 .

エラーは次のとおりです。

[ERROR] Failed to execute goal org.eclipse.tycho.extras:tycho-source-feature-
plugin:0.14.0:source-feature (source-feature) on project org.eclipse.linuxtools.systemtap: Could not generate source feature for project MavenProject: org.eclipse.linuxtools.systemtap:org.eclipse.linuxtools.systemtap:1.2.0-SNAPSHOT @ /home/greenrd/git/org.eclipse.linuxtools/systemtap/org.eclipse.linuxtools.systemtap-feature/pom.xml
[ERROR] Missing sources for plugins [org.eclipse.linuxtools.systemtap.ui.consolelog_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.editor_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.graphingapi.ui_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.logging_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.structures_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.graphing_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.systemtapgui_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.ide_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.dashboard_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.dashboardextension_0.3.0.201203201951, org.eclipse.linuxtools.systemtap.ui.graphicalrun_0.3.0.201203201951]
[ERROR] -> [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/MojoExecutionException
4

2 に答える 2

0

mvn package通常、Tycho ビルドを使用してプラグインと機能をパッケージ化します。おそらく、あなたの失敗は、フェーズmvn installでの統合テストの実行も含む使用に関連しています。verify

mvn packageうまくいかない場合は、ビルドしているプロジェクトと発生しているエラーを追加してください。

于 2012-03-31T13:37:34.117 に答える
0

Tycho を使用するプロジェクトは、他の Maven プロジェクトと同じようにビルドする必要があります。つまり、プロジェクトをビルドし、プロジェクトmvn clean verifyのルートで呼び出してそのテストを実行できるはずです。(ルートにない場合はpom.xml、「親」を含む名前のプロジェクトを探すか、そのプロジェクトにビルド エントリ ポイントを尋ねます。)

Maven の場合と同様に、通常、プロジェクトをチェックアウトして、その一部のみを直接ビルドすることはできません。たとえばmvn、eclipse 機能のサブプロジェクトを呼び出すことはできません。これが機能するには、最初にプロジェクト全体を一度ビルドする必要がありmvn clean installます。その後、プロジェクトの一部を再ビルドすることもできます。

ソースの変更を行う場合は、フル ビルドをやり直すことをお勧めします。変更されたサブプロジェクトのみをビルドすることは可能ですが、すべての集約プロジェクト タイプ (つまり、"eclipse-feature" および "eclipse-repository") が再ビルドされていることを手動で確認する必要もありますが、これはおそらく努力する価値はありません。 . (残念ながら、Maven オプション--also-make-dependents現在 Tycho ではサポートされていません。)

ローカルのビルド結果からインストールするには、プロジェクトのバイナリを p2 リポジトリとしてアセンブルするサブプロジェクトを見つける必要があります。ディレクトリtarget/repository(またはおそらく) を探して、 /サブフォルダを確認します。リポジトリまたはサイト フォルダーは、Eclipse の更新メカニズムの「ローカル」ソースとして使用できます。target/sitefeaturesplugins


免責事項: 上記の手順は、Tycho を使用するすべてのプロジェクトで機能するとは限りません。問題が発生した場合は、ビルドを実行するための特別な手順についてプロジェクトのドキュメントを確認するか、プロジェクトの開発者に問い合わせてください。

于 2012-08-24T20:07:31.240 に答える