問題タブ [eclipse-fragment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Eclipseフラグメントプロジェクト用のBundleActivatorに相当するものはありますか?
通常のプラグインプロジェクトのコア機能のセットを提供するEclipseプラグインを構築しています。フラグメントプロジェクトを介して提供しているオプション機能。ただし、起動時にメインプラグインに登録するためのフラグメントが必要です。
フラグメントプロジェクトにBundle-Activatorを含めることはできません。だから私は私がフックできるエントリポイントまたはいくつかのコールバックを宣言するためのいくつかの代替メカニズムがあるのだろうかと思っていますか?
また、フラグメントプロジェクトを通常のプラグインプロジェクトに変換する以外に方法がない場合、注意する必要のある欠点はありますか?
これは、受け入れられた回答に基づいて使用したソリューションです。
eclipse-plugin - フラグメントのコンテンツは、ホスト プラグインの外部で表示されますか?
これまでプラグイン フラグメントを使用したことはありません。フラグメント内に新しいクラスを作成し、それを含むパッケージをフラグメントのマニフェストにエクスポートすることで、ホスト プラグインに既に依存している別のプラグインからそのクラスにアクセスできると考えました。しかし、私はこれを機能させることができないようです。フラグメントのコンテンツは、ホスト プラグイン以外のプラグインから見えることがありますか? もしそうなら、これを許可するために私がしなければならない特別なことはありますか?
eclipse-plugin - 同じOS、異なるアーチの2つのフラグメントを使用したEclipsePDEUI機能のエクスポート
私が解決するのに苦労している問題で、EclipsePDEの第一人者がここに加わってくれることを望んでいます。
2つのフラグメントが含まれている機能を(PDE UIを介して)エクスポートしようとしています。両方のフラグメントが同じOS(Linuxなど)をターゲットにしていますが、アーキテクチャ値が異なります(x86とx86_64など)。各フラグメントには、Linuxx86またはLinuxx8664ビットのいずれかで構築されたいくつかの.soライブラリファイルの独自のコピーがあります。例えば:
対応するデルタパックを使用してホスティング機能をエクスポートし、Linux(gtk / x86)またはLinux(gtk / x86_64)のいずれかを選択すると、エクスポートは期待どおりに機能します。ただし、両方のプラットフォームを選択すると、エクスポートが失敗し、次のメッセージが表示されます。
両方のフラグメントを一緒にエクスポートできないのはなぜですか?LinuxX86機能でエクスポートできるWin32x86フラグメントもありますが、.soファイルではなく、同じファイルタイトル(lib1.dll、lib2.dll、lib3.dllなど)の.dllファイルがあります。
2つのLinuxベースのフラグメントで同じ名前の.soライブラリファイルがあると、この問題が発生する可能性がありますか?
これはビルドプロセスにとって重要なブロックであるため、どんな助けでも大歓迎です(UIを介して手動で、ヘッドレスで)。
eclipse - フラグメントプロジェクトでEclipseプラグインを拡張するときのクラスの読み込みが機能しない
フラグメントプロジェクトを使用して、サードパーティのEclipseプラグインを拡張しようとしています。主な理由は、サードパーティのプラグインにデフォルト(パッケージ)修飾子を持つクラスが含まれており、それらを拡張する必要があるためです。
したがって、私の拡張機能クラスはまったく同じパッケージに配置する必要があります。同じパッケージを含むフラグメントプロジェクトを作成し、クラスをその中に入れます。ランタイムワークスペースを使用している場合、すべてが正常に機能します。
ただし、フラグメントをデプロイしようとすると(たとえば、Eclipseディストリビューションのdropinsフォルダーにデプロイしようとすると)、コードを実行できません。拡張機能などは正常に機能します(たとえば、新しい実行構成に拡張機能を使用します。ただし、この実行構成をインスタンス化しようとすると、サードパーティのルートプラグインがクラスをロードできなかったというエラーメッセージが表示されます。構成タブグループを表示します。
この種の問題の経験はありますか?
java - Eclipse RCP:起動構成プラグインをエクスポートする方法は?
注:これは、製品エクスポートの問題に関する質問と重複するものではありません: GUI 内とヘッドレス pde ビルドの両方で、既に正常にエクスポートできます。
リリース前の最終段階にあるEclipse Indigo(3.7)でRCPアプリケーションを開発しています。ブランディング製品は、独自のプラグインで、機能ベースであり、次のものが含まれます。
- myapp の主な (そして独自の) 機能
- org.eclipse.rcp
- org.eclipse.equinox.p2.feature
- org.eclipse.help
主なフィーチャーは、アプリケーションを構成するすべてのプラグインと、org.eclipse.rcp および org.eclipse.equinox.p2 フィーチャーから最低限必要なプラグインのセットを収集 (インクルード) します。これは、p2 セルフプロビジョニングに必要なプラグインと、アプリケーションの実行に必要なプラットフォーム プラグインの最小セットに依存します。
次に、翻訳を追加し、eclipse-babel のスナップショットをターゲットに追加する必要がありました。
これは状況です:
- 製品を同期します
- 新しい起動構成を生成して製品を起動します
- --> GUI の一部のみが翻訳されています
- 起動設定 - プラグイン タブ - を開き、「必要なプラグインを追加」をクリックします
- 同梱プラグイン数が増加(約130個から約180個に)
- --> アプリケーションを起動すると、すべてが翻訳されます
そのため、「選択が必要」をクリックした後、起動に含まれるフラグメントを手動で機能インクルードにコピーする必要がありました(実際には、翻訳を含むフラグメントのみ)。それはそれを修正しました。
質問:起動構成で現在選択されているプラグインのリストをエクスポートする方法はありますか? または、起動構成に含まれるものを機能に含まれるものと同期する他の方法(逆ではない)?
eclipse - Eclipse 製品がフラグメントを認識しない (非圧縮)
プラグインとフラグメントを持つ Eclipse PRODUCT があります。
Plugin A (PRODUCT MAIN Plugin)
エクスポートされたプラグイン(eclipse DROPINS フォルダー):
Plugin B ( Plugin A の依存関係)
Fragment A (HOST= Plugin B ) - UNCOMPRESSED =resources
Fragment B (HOST= Plugin B )
問題: フラグメント A が認識されないため、PRODUCT の依存関係でエラーが発生します。認識されるには、JAR 形式で圧縮する必要があります。
プラグイン B が PRODUCT MAIN プラグインである場合、圧縮されていないフラグメントが認識されるため、これはよくわかりません。
Plugin B (PRODUCT MAIN Plugin)
Fragment A (HOST= Plugin B ) - UNCOMPRESSED =resources
Fragment B (HOST= Plugin B )
PRODUCT にはエラーはなく、期待どおりに正常にエクスポートされます。
では、なぜプラグイン Bを別のプラグインの依存関係として使用できないのでしょうか?
解決策はありますか?
java - Java 7u55 Eclipse システム フラグメント クラスローダー
以前のバージョンの Java では、ブート クラスローダーにクラスを提供するために、システム バンドルのホストを持つフラグメントを使用できました。
私の特定のケースでは、これは Eclipse での Jacorb の使用をサポートするためのものでした。Java 7u55 より前では、これはすべて正常に機能していました。
Jacorb のすべての jar を含む osgi フラグメントを作成しました。マニフェストは次のようになります。
また、vm 引数として次を指定します。
Java 7u51 で Eclipse アプリケーションを実行したところ、ORB.init() を正常に呼び出すことができました。
Java 7u55 で同じアプリケーションを実行すると、次のようになります。
以下を vmargs として追加すると動作します。
Java 7u55 Java 6u30 および Java 8u5 に影響することを確認しました。
以前はこれを行う必要はありませんでした。理由はありますか?
--- 編集 04/30 ---
さらに掘り下げたところ、問題の原因となっている ORB.java へのコミットが見つかりました。
このコミットにより、ORB クラスの作成方法が変更されました。Thread コンテキスト クラス ローダーを使用する代わりに、SystemClassLoader を使用するようにハード コードされています。
この問題について Orcale にチケットを記録しようとしました。それまでの間、何らかのフラグメントを介して JVM に付属する ORB.java をオーバーライドする方法はありますか?
java - Eclipse フラグメントが親プラグインのクラスを解決しない
Eclipse Mars.2 上の Linux で実行されます。私のプラグインの 1 つがその時代のサードパーティであるため、プラグインがほとんど Kepler.2 からのものになるように、ターゲットプラットフォームを使用しています。
多くのクラスが解決されないため、Eclipse でコンパイルできないフラグメントがあります。フラグメント内の fragment.xml と MANIFEST.MF が問題ないように見えるので、これが必要な理由はわかりません。もちろん、ホストフラグメントはフラグメントを認識していません。
フラグメントの build.properties
フラグメント.xml
マニフェスト.MF
何か案は?