Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse PropertyPage启用_Eclipse_Eclipse Pde_Eclipse Plugin_Pde - Fatal编程技术网

Eclipse PropertyPage启用

Eclipse PropertyPage启用,eclipse,eclipse-pde,eclipse-plugin,pde,Eclipse,Eclipse Pde,Eclipse Plugin,Pde,我想通过我的插件在eclipse中添加一个属性页。此属性页只能为我的项目启用。我已经在plugin.xml中编写了以下代码 以上代码适用于ProjectExplorer和navigator视图中的项目。但在PackageExplorer视图中,这一点不起作用 那么,如何实现特定于PackageExplorer视图的相同功能呢?我没有尝试过,但我的观点是,在您的PackageExplorer中没有org.eclipse.core.resources.IProject元素,您应该尝试任何输入(

我想通过我的插件在eclipse中添加一个属性页。此属性页只能为我的项目启用。我已经在plugin.xml中编写了以下代码


以上代码适用于ProjectExplorer和navigator视图中的项目。但在PackageExplorer视图中,这一点不起作用


那么,如何实现特定于PackageExplorer视图的相同功能呢?

我没有尝试过,但我的观点是,在您的PackageExplorer中没有
org.eclipse.core.resources.IProject
元素,您应该尝试任何输入(例如
org.eclipse.jdt.core.IJavaProject

我没有尝试过,但我的意见是,在包资源管理器中没有
org.eclipse.core.resources.IProject
元素,您应该尝试任何输入(例如
org.eclipse.jdt.core.IJavaProject

您应该将check的instanceof移到adapt内部。

您应该将check的instanceof移到adapt内部。

@nitind是正确的,您指定的约束太多了。当所选内容适用于某个IProject且其“projectNaure”属性包括“my nature”时,您想说“Enabled”

这应该做到:

   <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>


@nitind是正确的,您指定的约束太多。您想说“当所选内容适用于某个IProject且其“projectNaure”属性包括“my nature”时启用”

这应该做到:

   <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>


我应该如何判断我正在执行的检查是针对Package Explorer视图的。我应该如何判断我正在执行的检查是针对Package Explorer视图的。同意。如前所述,节点本身必须是一个IProject,并且能够适应您的天性。同意。如前所述,节点本身必须是一个IProject,并且能够适应您的天性。