2009-08-17 20 views
3

私は、私が書いた1つの機能とorg.eclipse.featureを含む製品定義を持っています。 Eclipseからこの製品をビルドすると、正常に完了します。ただし、Headlessビルドを使用しようとすると、org.eclipse.uiに含まれるクラスが見つからないという不満があるため、コンパイルプロセスは失敗します。たとえば、これらのクラスの1つはPlatformUIです。ビルドプロセスは失敗します。ヘッドレスビルド中にEclipse RCP製品ビルドでorg.eclipse.uiのクラスが見つからないのはなぜですか?

私はチェックして、org.eclipse.uiがorg.eclipse.uiプラグインに含まれています。私はまた、このプラグインを私のカスタム機能に明示的に組み込もうとしましたが、無駄です。

これらのプラグインのいずれかを問題なく削除しようとしましたが、次のorg.eclipse.uiが失敗しました。だから、いくつかの種族のクラスパスの問題であるようです。

Eclipseのバージョン3.3.2を使用してこのヘッドレスビルドを試しました。

+0

に変更する可能性を、あなたはヘッドレスビルドが失敗したと言っていますまたはヘッドレスビルドで作成された製品が動作しません。これらは、異なる障害シナリオを持つ2つの異なるものです。 – SteveD

答えて

1

クラスは、org.eclipse.ui.workbenchプラグインにあります。

org.eclipse.ui.workbenchが必要であり、org.eclipse.uiによって再エクスポートされます。 "org.eclipse.ui"パッケージはsplit packageです。

この依存関係に対してImport-Packageを使用している場合は、パッケージのプロバイダの1人にのみ接続しています。あなただけui.workbenchからクラスを必要とする場合は、あなたのインポート、パッケージステートメントに属性を追加することができます。

Import-Package:org.eclipse.ui;ui.workbench=split 

それとも、あなただけのRequire-Bundle

+0

私は問題を見つけました。それはあなたが言いたいことに関連しています。私はビルドに混乱を引き起こしていた偽のorg.eclipse.ui.workbenchプラグインを持っていました。 –

0

build.propertiesファイルを確認しましたか?

具体​​

archivesFormatプロパティは、構成に基づいて、ビルドの出力形式(ZIP、タール、およびフォルダ)を指定することができます。
プロパティの形式は<configuration> - <format>です。ここでの設定はconfigsプロパティで指定された値と同じです。

のインストールでビルドしようとしているときにlinux,gtk,x86-folderが指定されていると、動作しません。

+0

こんにちは!私はこのファイルをチェックした。私は実際にエントリがありませんでした。私はwin32エントリを追加しましたが、私の問題はまだ同じです。 –

0

残念ながら、Eclipseは、GUIで製品をエクスポートしてヘッドレスで実行すると、異なる動作を示します。彼らは全く同じではありません。

私が過去に見つけた1つの問題は、目標としていたのと同じアーキテクチャ(win32)でビルドを行っていたとしても、ヘッドレスビルドのためにdelta packがインストールされている必要があったことです。 GUIから製品をエクスポートすると、デルタパックなしで動作します - doh!

関連する問題