3

私はe4RCPのEclipseの概念を理解しようとしています。
チュートリアルに従って読んだ後、私は次のことに固執します:プロジェクト
を作成すると仮定しますPlugin(リッチクライアントがチェックされていない、Actvatorがチェックされていないため、/ srcの下にクラスがないなど)
プラグインはEclipseの最小のデプロイ可能およびインストール可能なソフトウェアコンポーネントです。Ok。これで、またはに基づくを
作成できます。 したがって、はプラグインなどを提供し、私が正しく理解していれば、これはオプションです。私が正しいと仮定して(わかりません、私ですか?)、依存関係を製品構成に追加します。そして、を押します。私の製品構成はプラグインベース として選択されています。Product ConfigurationPlugins Features
Product ConfigurationFeature
org.eclipse.emf.commonorg.eclipse.emf.ecoreAdd Required Plugins

この時点で私が理解していないのは、プラグインを依存関係の一部として定義しないと、アプリケーションを実行したときにプラグインが見つからないということです(実行前にプラグインの検証を確認しました)。しかし、なぜ?プラグインは、製品定義で「プラグインの定義」としてすでに定義されています(新規)。ここにも明示的に追加する必要があるのはなぜですか?

とにかくそれを通過して、ウィンドウを起動しようとすると(はい、作成しNew Application Modelて定義しましたTrimmed Window)、ランタイム例外が発生します

java.lang.RuntimeException: Application "org.eclipse.e4.ui.workbench.swt.E4Application" could not be found in the registry. The applications available are: org.eclipse.equinox.app.error.
    at org.eclipse.equinox.internal.app.EclipseAppContainer.startDefaultApp(EclipseAppContainer.java:248)
    at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:29)

私はこれがプラグインが欠落しているために起こると推測することができます:( org.eclipse.e4.ui.workbench.swtプラグインの検証を有効にしたためにこれを取得しました)

ここに画像の説明を入力してください

なぜこの例外が発生するのですか?org.eclipse.e4.rcpas依存関係を追加していないので、取得できると思います。
しかし、私はそれをオプションとして見つけることができません。これは、製品構成がである場合にのみ選択できることがわかりましたbased on Features。プラグインでは使用できません。
さらに、同じプロセスですが、製品構成への依存関係として定義し、Featureそれを「アタッチ」します。つまり、ランタイム例外はなく、ウィンドウが表示されます。

では、何が起こっているのでしょうか。機能は必須ですか?理解できない。それらはオプションだと思いました。誰かが私がこれを理解するのを手伝ってもらえますか?

更新:
依存関係として 手動で追加した場合org.eclipse.e4.ui.workbench.swt(および必要な追加を押した場合)、次のproductようになります。

ここに画像の説明を入力してください

!ENTRY org.eclipse.osgi 2 0 2012-08-20 18:36:52.044
!MESSAGE One or more bundles are not resolved because the following root constraints are not resolved:
!SUBENTRY 1 org.eclipse.osgi 2 0 2012-08-20 18:36:52.044
!MESSAGE Bundle initial@reference:file:plugins/org.eclipse.e4.ui.workbench.swt_0.10.1.v20120525-2014.jar was not resolved.
!SUBENTRY 2 org.eclipse.e4.ui.workbench.swt 2 0 2012-08-20 18:36:52.044
!MESSAGE Missing required bundle org.eclipse.core.databinding_[1.2.0,2.0.0).
4

1 に答える 1

4

Eclipse 4でプラグインベースの製品を作成している場合でも、org.eclipse.e4.rcp機能を構成するほとんどのプラグインが必要です。http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/features/org.eclipse.e4.rcp/feature.xmlのリストからそれらを追加してみてください

于 2012-08-20T19:28:26.303 に答える