我想通过我的插件在eclipse中添加一个属性页面。必须仅为我的性质项目启用此属性页。我在plugin.xml中编写了以下代码
<extension
point="org.eclipse.ui.propertyPages">
<page
class="com.test.me.ME"
id="com.test.me.ME"
name="ME">
<and>
<instanceof
value="org.eclipse.core.resources.IProject">
</instanceof>
<adapt
type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.core.resources.projectNature"
value="com.test.me.meprojectnature">
</test>
</adapt>
</and>
</page>
以上代码适用于项目资源管理器和导航器视图中的项目。但是在包资源管理器视图中同样不起作用。
那么,如何实现特定于package explorer视图的相同功能?
答案 0 :(得分:2)
你应该在适应中移动你的instanceof check。
答案 1 :(得分:1)
@nitind是对的,你指的是太多的约束。你想说“选择适用于IProject时启用,而”projectNaure“属性包括”我的本性。“
这应该这样做:
<extension point="org.eclipse.ui.propertyPages">
<page
name="My Property Page"
class="some.package.MyPropertyPage"
id="some.package.MyPropertyPage">
<enabledWhen>
<adapt type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="some.package.MyNatureID"/>
</adapt>
</enabledWhen>
</page>
答案 2 :(得分:0)
我还没试过,但我的意见是,在你的包浏览器中没有org.eclipse.core.resources.IProject
元素,你应该尝试任何输入(例如org.eclipse.jdt.core.IJavaProject
)