我已经为 Eclipse 开发了插件。它包括属性页、几个动作和特定视图。所有这些功能都是由特定的扩展点添加的:
<page
class="MyPropertyPage"
id="MyPage1"
name="My Project"
nameFilter="*"
selectionFilter="single">
<enabledWhen>
<instanceof
value="org.eclipse.core.resources.IProject">
</instanceof>
</enabledWhen>
</page>
<page
class="MyPropertyPage"
id="MyPage2"
name="My Project"
nameFilter="*"
selectionFilter="single">
<enabledWhen>
<instanceof
value="org.eclipse.cdt.internal.core.model.CProject">
</instanceof>
</enabledWhen>
</page>
动作命令类内容代码:
if (obj instanceof IJavaProject) {
...
} else if (obj instanceof CompilationUnit) {
...
} else if (obj instanceof TranslationUnit) {
...
}
在调试模式下,当使用 C++ 透视图打开第二个 eclipse 时,它可以完美运行。但在运行时,它失败并出现错误java.lang.NoClassDefFoundError: org/eclipse/cdt/internal/ui/cview/CView
。
尝试执行我的操作命令也会失败,并出现类似的错误java.lang.NoClassDefFoundError: org/eclipse/cdt/internal/core/model/TranslationUnit
。
有助于克服错误?提前非常感谢。