org.eclipse.core.internal.expressions.ReferenceExpression не может быть найдено org.eclipse.e4.ui.workbench_1.3.0.rap-20200811-0954

#java #eclipse

#java #eclipse

Вопрос:

Я обновил целевую платформу для нашего приложения RAP до версии Eclipse 2020-09. Теперь я не могу запустить приложение из-за java.lang.ClassNotFoundException :

 org.eclipse.core.internal.expressions.ReferenceExpression cannot be found by org.eclipse.e4.ui.workbench_1.3.0.rap-20200811-0954
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:516)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.eclipse.e4.ui.workbench.renderers.swt.MenuManagerRenderer.processContributions(MenuManagerRenderer.java:496)
    at org.eclipse.e4.ui.workbench.renderers.swt.MenuManagerRenderer.createWidget(MenuManagerRenderer.java:404)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:952)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:633)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$1.run(PartRenderingEngine.java:518)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:502)
    at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer.processContents(WBWRenderer.java:642)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:645)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:736)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:707)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:701)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:686)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1066)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1024)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
    at org.eclipse.rap.e4.E4EntryPointFactory.createWorkbench(E4EntryPointFactory.java:88)
    at org.eclipse.rap.e4.E4EntryPointFactory.access$0(E4EntryPointFactory.java:59)
    at org.eclipse.rap.e4.E4EntryPointFactory$1.createUI(E4EntryPointFactory.java:50)
    at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
    at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
    at java.lang.Thread.run(Unknown Source)
    at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
  

Со старой версией Eclipse 2020-06 он работает нормально. Это какая-либо ошибка Eclipse или мне нужна какая-либо дополнительная зависимость? Любой совет?

Комментарии:

1. ReferenceExpression Класс, похоже, был перемещен в текущей версии. Похоже org.eclipse.e4.ui.workbench_1.3.0.rap-20200811-0954 , что он устарел.

2. Вы правы, грег-449, я проверил структуру org.eclipse.core.expressions, и в выпуске 3.7.0.v20200720-1126 класс ReferenceExpression (а также другие классы) был перемещен из org.eclipse.core.internal.expressions в org.eclipse.core.expressions.