eclipse 内で rcp アプリケーションを実行すると、スプラッシュ画面が正常に表示されます。しかし、スプラッシュ画面をまったく変更していない新しいrcpアプリケーションであっても、製品のスプラッシュ画面をエクスポートすると表示されません
6 に答える
OK、次のことを確認/確認してください
(これらの手順は、Eclipse IDE ディレクトリではなく、アプリのエクスポート ターゲット ディレクトリに対して常に実行する必要があります)。
- RCP メール テンプレートの例は正しく機能しますか? ウィザードを使用してサンプル アプリを作成し、マニフェスト エディターの最初のページにあるハイパーリンクからエクスポートすることは完全に可能です。この結果は常に機能するはずです。それ以外の場合は、Eclipse のインストールを確認してください。
- 正しいランチャーを使用しましたか? eclipse.exeとeclipsec.exeがあります(後者はコマンドライン版=>スプラッシュなし)
- エクスポートされた結果には、バンドルが /plugins の下の jar またはディレクトリ形式 (当社の製品では両方の形式が機能します) に含まれている必要があります (バンドル自体は、論理的にはルートに自分の splash.bmp を含める必要があります)。私の記憶が正しければ、特定のパラメーターを持つ BMP である必要があります。RCP メール テンプレートの例を調べて、それらを見つけてください。
- そうでない場合: 製品定義を確認してください (含まれるプラグイン/機能)
- アプリに RCP メール テンプレートのサンプル画像を使用してみてください。それも機能しませんか?その場合は、Windows ペイントで開いたり保存したりしてみてください。
- 次に、構成サブフォルダーの「config.ini」に次のエントリがあることを確認します: osgi.splashPath=platform\:/base/plugins/<バージョンの付録のないバンドル>
(osgi.splashPath=platform:/base/ plugins/<your bundle w/o version> も機能
します この設定にデフォルトがあるかどうかはわかりませんが、今回はランチャーにスプラッシュ画像を探す場所を明示的に伝える必要があります. :-) - ランチャー (eclipse.exe) の隣にある eclipse.ini の config.ini 設定を上書きする -D パラメーターがないことを確認してください。
- eclipse.ini または config.ini に「noSplash」はありますか?
- バンドルが jar の場合は、bmp が configuration\org.eclipse.equinox.launcher の下のどこかに正しく抽出されているかどうかを確認してください...
- そうでない場合: バンドル jar 内にイメージが正しく含まれていないか、見つかりません。build.properties を確認してください
- ワークスペースを削除し、rcp アプリを -clean で起動します
- -console -consoleLog および -noExit で開始して、起動時に発生するエラー メッセージを認識することができます。
スプラッシュ画面の画像を build.properties ファイルに追加しましたか?
そうでない場合、画像は生成された *.jar ファイルの一部ではありません
例:
bin.includes = splash.bmp,\
product.properties,\
about.ini,\
about.properties,\
plugin_customization.ini,\
META-INF/
スプラッシュ画面を含むプラグインの場所が追加されませんでした...
製品->スプラッシュ->場所->プラグイン
また、製品の依存関係 (製品エディターの [依存関係] タブなど) にプラグイン org.eclipse.ui.intro が含まれていることを確認してください。また、ウェルカムが intro.universal に基づいている場合は、追加の org.eclipse.ui.intro.universal を追加する必要があります。
手遅れかもしれませんが、上記の手順をすべて実行しても問題は解決しませんでした。以下の手順を試してみると問題が解決しました。依存関係タブの下の.prdocutファイルには、「必要なプラグインを計算するときにオプションの依存関係を含める」というチェックボタンがあり、最終的にスプラッシュ画面が表示されました。誰かがこの回答を参照している場合は、上記の回答に従って、この回答を試してください。