我在application.e4xmi
文件中定义了多个部分。这些正确加载。
我现在想要一个部分使用不同的类URI。我现在已将该部分指向新类URI并运行应用程序。
这是我得到的错误。
!ENTRY org.eclipse.e4.ui.workbench 4 0 2019-02-13 09:30:26.003
!MESSAGE Unable to load class 'com.example.ViewName' from bundle '3'
!STACK 0
java.lang.ClassNotFoundException: com.example.ViewName cannot be found by com.example_1.0.0.qualifier
我不再在ViewName
文件中使用application.e4xmi
类。这意味着它必须从缓存中获取类URI。然后它无法找到该类并抛出错误。我在产品文件中尝试过Synchronize
和Launch an Eclipse application
,因为我认为可能会更新它,但它没有效果。我用来更新的原始方法是清除缓存,但我们不能让用户这样做,因为他们会失去他们的偏好。
处理这个问题的正确方法是什么?
在“运行配置”的“参数”选项卡的“程序参数”部分中指定-clearPersistedState
标志。这将阻止Eclipse从上一次运行加载持久化的workbench.xmi(这是在工作区的.metadata / .plugins / org.eclipse.e4.workbench文件夹中)。