1

この投稿から、ヘッドレス Eclipse コードを実行しようとすると、このエラー メッセージが表示されます。

java.lang.RuntimeException: Could not find framework
    at org.eclipse.equinox.launcher.Main.getBootPath(Main.java:978)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:557)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

問題に対する答えとしてこれを見つけるためにグーグルで検索しました: Eclipseの起動中に「アプリケーションサービスを取得できません」というエラー

ただし、config.ini を配置する方法と、エラー メッセージを削除するための正しいコンテンツを配置する方法が正確にはわかりません。

これは私のディレクトリ構造でDosgi.bundles=org.eclipse.equinox.common@2:start,org.eclipse.update.configurator@3:start,org.eclipse.core.runtime@、eclipse.ini ファイル内にあります。

ここに画像の説明を入力

eclipse.ini ファイルをセットアップするにはどうすればよいですか? また、ファイルをどこに配置する必要がありますか?

jar ファイルはpluginsディレクトリにあり、次のrunme.shスクリプトがあります。

R2_HOME=.
LIBS=plugins
JARS=.:\
$LIBS/org.eclipse.core.contenttype_3.4.100.v20110423-0524.jar:\
$LIBS/org.eclipse.core.jobs_3.5.100.v20110404.jar:\
$LIBS/org.eclipse.core.runtime_3.7.0.v20110110.jar:\
$LIBS/org.eclipse.core.runtime.compatibility.auth_3.2.200.v20110110.jar:\
$LIBS/org.eclipse.equinox.common_3.6.0.v20110523.jar:\
$LIBS/org.eclipse.equinox.app_1.3.100.v20110321.jar:\
$LIBS/org.eclipse.equinox.launcher_1.2.0.v20110502.jar:\
$LIBS/org.eclipse.equinox.preferences_3.4.1.R37x_v20110725.jar:\
$LIBS/org.eclipse.core.variables_3.2.500.v20110928-1503.jar:\
$LIBS/org.eclipse.osgi.services_3.3.0.v20110513.jar:\
$LIBS/org.eclipse.osgi.util_3.2.200.v20110110:\
$LIBS/org.eclipse.osgi_3.7.2.v20120110-1415

java -cp $JARS org.eclipse.core.launcher.Main -application headlessHello2_1.0.0.201210101509.jar

追加した

Paul の回答に基づいて、プラグインがエクスポートされているディレクトリに config.ini ファイルをコピーしました。

ここに画像の説明を入力 ここに画像の説明を入力

また、スクリプトを修正して、-applicationポイントが正しい ID になるようにしました。

R2_HOME=.
LIBS=plugins
JARS=.:\
$LIBS/org.eclipse.core.contenttype_3.4.100.v20110423-0524.jar:\
...
$LIBS/org.eclipse.osgi_3.7.2.v20120110-1415:\
headlessHello2_1.0.0.201210101509.jar

java -cp $JARS org.eclipse.core.launcher.Main -application headlessHello2.id2

このスクリプトを実行すると、configurationディレクトリ内にいくつかのファイルが追加されますが、別のエラー メッセージが表示されます。

ここに画像の説明を入力

org.osgi.framework.BundleException: The activator headlesshello2.Activator for bundle headlessHello2 is invalid
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:171)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:679)
    at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)

何が間違っている可能性がありますか?

4

1 に答える 1

1

製品(プラグインベースの製品でさえ)のエクスポートは、実行中のRCPアプリケーションを取得するために必要なものを提供するためにはるかにうまく機能します。

ただし、ヘッドレスアプリの起動構成を既に作成している場合は、を調べることで、必要なバンドルと、場合によってはconfig.iniファイルがどのように見えるかを正確に知ることができます<workspace>/.metadata/.plugins/org.eclipse.pde.core/<launch-config.name>。ヘッドレスアプリを起動するためにPDEが生成したconfig.iniが必要です。

理由がない限り、アプリケーション用の.productファイルを作成してエクスポートすることをお勧めします。

于 2012-10-11T02:47:08.993 に答える