1

スタンドアロンの Eclipse RCP アプリケーションを既に持っています。次のタスクは、 CDTPyDevなどの Eclipse コミュニティで広く使用されているプラ​​グインを統合して、既に開発された RCP アプリ内のそれぞれのプログラミング言語で編集およびデバッグ機能を提供することです。このタスクを達成するにはどうすればよいのか疑問に思っています。プラグインの拡張ポイントをいじってMANIFEST.MFに追加することから始めるべきですか?

これを達成するためのさまざまな方法は何ですか? どちらを選ぶべきですか?

4

3 に答える 3

3

(技術的なこと以外に) 考慮すべき最も重要なことは概念です。

CDT のようなプラグインは、統合先の環境について多くの仮定を立てています。つまり、RCP は通常の Eclipse SDK と非常によく似たユーザー インターフェイスと動作を備えている必要があるため、他の "IDE っぽい" プラグインの統合によって RCP のインターフェイス原則が破られることはありません。

RCP が共通のナビゲーター、プロジェクト、ファイル (通常はワークスペース)、およびいくつかのエディターに基づいていない場合、CDT などのプラグインの統合はユーザーにとって悪夢となり、RCP 内の別のアプリケーションのように感じられます。

また、サードパーティ プラグインからの ui-contributions が表示されていることも確認してください (たとえば、サードパーティ プラグインが設定ページに貢献している場合は、RCP に設定ウィンドウを開くためのメニュー項目があることを確認してください)。

于 2012-10-31T13:20:04.323 に答える
1

RCP製品は、すでにRCP機能(org.eclipse.rcp)またはそのプラグインのサブセットに依存しています。つまり、基本的な拡張ポイントを定義するプラグインがすでに含まれています。

追加機能の機能(拡張機能)を含めるには、これらの機能を製品構成の依存関係に追加するだけです。たとえば、CDTの場合はorg.eclipse.cdt機能を追加し、PyDevの場合はorg.python.pydev.featureを追加する必要があります。

難しい部分は、機能のプラグインの一部だけを含める必要があるときに始まります。

必要な機能を提供するプラグインを分離する必要があります。UIコントリビューションの場合、必要なUIパーツを選択し、Alt + Shift + F1をクリックして、プラグイン選択スパイを使用できます。UI以外のコントリビューションの場合、コントリビューションされた拡張機能の情報は、プラグインソースのplugin.xmlファイルにあります。

これらのプラグインは、それらの依存関係とともに、製品に含めることができるカスタム機能に追加できます。

日付はありますが、CDTベースのエディターの構築に関する記事も役立つ場合があります。

于 2012-10-30T20:59:08.263 に答える
1

まず、既存のRCPアプリケーションに新しい機能/プラグインをロードする必要があります。このためには、製品定義を調整し、新しいfeature.xmlファイルをロードする必要があります。または、独自のfeature.xmlを拡張して、新しいプラグインをに配置します。

その後、新しい機能/ビュー/パースペクティブが既存のRCP拡張ポイントへの貢献であるかどうか、およびこの拡張ポイントをRCP製品で使用するかどうかを決定する必要があります。

新しい関数を別の方法で使用したい場合(デフォルトでは不十分なため)、新しいプラグインの特定のビュー/アクションをポイントして、自分で呼び出す必要があります。自分のプラグインのMANIFEST.MFを調整し、新しいプラグインを指定する必要があります。これを行うと、これらのプラグインへのジャードリンクがあるため、追加された機能をオフにすることはできません。

于 2012-10-29T11:26:45.720 に答える