8

Eclipse プラグインで JavaSE-10 を最小実行環境として指定すると、次のようになります。

ここに画像の説明を入力

プラグインを Eclipse アプリケーションとして起動すると、次のエラーが発生します。

ここに画像の説明を入力

org.osgi.framework.BundleException: Could not resolve module: org.treez.core [597]
  Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=10))"
  Unresolved requirement: Require-Bundle: org.treez.javafxd3; visibility:="reexport"
    -> Bundle-SymbolicName: org.treez.javafxd3; bundle-version="1.0.0.qualifier"; singleton:="true"
       org.treez.javafxd3 [586]
         Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=10))"

    at org.eclipse.osgi.container.Module.start(Module.java:444)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1613)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

私はそれをチェックしました

  • Java10 は、Installed JREs の下で尊重されます
  • コンプライアンス レベルとして 10 が選択されます

Oxygen.3a リリース (4.7.3a) ビルド ID: 20180405-1200 を使用します

=>これは日食分点のバグですか?

=>この問題を解決するために、他に何を確認できますか?

ここに画像の説明を入力

最小実行環境設定から JavaSE-10 を削除すると、Eclipse アプリケーションを起動でき、プラグインは正常に動作するようです。

プラグインをエクスポートすると、次の警告が表示されます。

# 25.04.18, 12:25:40 MESZ
# Eclipse Compiler for Java(TM) v20180330-0919, 3.13.102, Copyright IBM Corp 2000, 2015. All rights reserved.
option -bootclasspath not supported at compliance level 9 and above

更新ページからインストールした後にプラグインを使用しようとすると、ClassNotFoundException が発生します。

...
Caused by: java.lang.ClassNotFoundException: org.treez.views.tree.TreeViewPart cannot be found by org.treez.views_1.0.0.201804191641
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
    at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:564)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
    ... 114 more

Java8 を使用すると、すべて正常に動作します。

関連する質問:

4

3 に答える 3