2016-08-26 7 views
0

私はOS特有のプラグインを設計する必要があります。 OS(MACまたはWindows)によっては、プラグインの内容が異なる場合があります。OS固有のプラグインを作成するには

現在のところ、Windows用のプラグインとMAC用のプラグインIDのcom.core.winとcom.core.macという2つの異なるプラグインを維持しています。

メインのプラグインは上記のプラグインに依存しています。しかし、私のプラグインIDはOSによって異なるので、どちらのプラグインも「オプション」としてプラグイン依存関係に追加されます。

com.core.win; resolution:=optional, 
com.core.mac; resolution:=optional 

実際には、依存関係は必須です。「必須」です。密接な依存関係を定義できるように、プラグインの構造をどのように設計するのですか?標準的なソリューションアプローチはありますか?

ありがとうございました!

+0

通常、プラットフォーム固有の[フラグメント](http://www.vogella.com/tutorials/EclipseFragmentProject/article.html)で1つのプラグインを使用します –

+0

プラットフォーム固有のフラグメントを指定するにはどうすればよいですか?応答のための@ありがとうございます。 – Priyadarshini

答えて

2

通常、プラットフォームごとにプラットフォーム固有のフラグメントを持つ1つの基本プラグインがあります。

あなたはプラットフォームを指定するEclipse-PlatformFilter MANIFEST.MFエントリを使用し、のようなもの:ココアウィンドウシステム、Mac OS Xオペレーティングシステムと64ビットを指定

Eclipse-PlatformFilter: (& (osgi.ws=cocoa) (osgi.os=macosx) (osgi.arch=x86_64)) 

(これは現在の通常の設定ですMac)。

plugin.xml/MANIFEST.MFエディタでは、これは 'Overview'タブの 'General Information'セクションの 'Platform Filter'フィールドです。

Hereは断片についての優れた紹介であり、Eclipse PDEヘルプにもドキュメントがあります。また、SWTは、プラットフォーム固有のコードのフラグメントの使用の良い例です。検査のためにSWTコードを取得する方法については、this FAQ entryを参照してください(実際にビルドおよびエクスポートの部分を行う必要はありません)。

+0

私は断片的な概念に非常に新しいです。あなたが私が述べた例を考えて、階層/構造を私に説明してください。 ? 更新サイトを動作させるためには、どのような変更を行う必要がありますか? – Priyadarshini

+0

答えにいくつかのリンクを追加しました。 –

+0

これは、Stack Overflowの答えが広すぎるとしています。 Eclipseプラグイン開発環境ガイドには断片に関する情報がありますが、[this](https://wiki.eclipse.org/FAQ_What_is_a_plug-in_fragment%3F)と[this](http://www.vogella.com)もあります。 /tutorials/EclipseFragmentProject/article.html)および他の多くの記事。 –

関連する問題