我想知道在eclipse初始化期间,当工作区中已经存在具有"org.eclipse.wst.jsdt.core.jsNature“性质的项目时,这个"org.eclipse.wst.jsdt.ui”插件是如何被激活的!
我的问题如下:当eclipse启动时,这个org.eclipse.wst.jsdt.ui插件一直处于启动状态,直到其他插件加载它的一个类。例如,启动它的一种方法是创建一个javascript项目,它具有这种org.eclipse.wst.jsdt.core.jsNature特性。创建项目后,如果重新启动eclipse,项目已经存在于工作区中,因此在eclipse启动后org.eclipse.wst.jsdt.ui插件处于活动状态,在我的情况下,即使我已经创建了项目并重新启动eclipse,org.eclipse.wst.jsdt.ui插件也处于启动状态而不是活动状态。
发布于 2015-07-07 01:34:18
如果你所说的“激活”指的是出现的各种菜单项、属性页等等--这是通过测试plugin.xml中定义的“enabledWhen”部分中的属性id来实现的。例如,属性页定义之一:
<extension
point="org.eclipse.ui.propertyPages">
<page
name="%cleanUpPageName"
category="org.eclipse.wst.jsdt.ui.propertyPages.CodeStylePreferencePage"
class="org.eclipse.wst.jsdt.internal.ui.preferences.CleanUpPreferencePage"
id="org.eclipse.wst.jsdt.ui.propertyPages.CleanUpPreferencePage">
<enabledWhen>
<adapt type="org.eclipse.core.resources.IProject">
<test property="org.eclipse.core.resources.projectNature"
value="org.eclipse.wst.jsdt.core.jsNature"/>
</adapt>
</enabledWhen>
<keywordReference id="org.eclipse.wst.jsdt.ui.cleanup"/>
</page>,它为具有org.eclipse.wst.jsdt.core.jsNature性质id的项目启用页面。
https://stackoverflow.com/questions/31250317
复制相似问题