popup:org.eclipse.jdt.ui.PackageExplorer不可见

时间:2014-05-17 09:19:59

标签: eclipse eclipse-plugin

我已经按照我在几个论坛上找到的所有可能的解决方案(也是这个:Eclipse plugin menu item is not visible)。但是,他们都没有解决我的问题。我也遵循了本教程http://www.vogella.com/tutorials/EclipsePlugIn/article.html。无论如何,标签没有显示在菜单中。这是我的plugin.xml:

<extension
     point="org.eclipse.ui.commands">
  <command
        defaultHandler="pr.handlers.SampleHandler3"
        id="pr.commands.rightclick"
        name="Analyze">
  </command>
.....

 <menuContribution
        locationURI="popup:org.eclipse.jdt.ui.PackageExplorer">
     <command
           commandId="pr.commands.rightclick"
           label="Analyze"
           style="push">

           <visibleWhen>
  <with variable="activeMenuSelection">
     <iterate
            ifEmpty="false">
        <adapt type="org.eclipse.core.resources.IFile">
           <test property="org.eclipse.core.resources.name" value="*java" />
        </adapt>
     </iterate>
  </with>
   </visibleWhen>
         </command>
      </menuContribution>

1 个答案:

答案 0 :(得分:1)

对于Package Explorer的packages部分中的Java文件似乎没有为org.eclipse.core.resources.IFile定义适配器,但是org.eclipse.core.resources.IResource有一个适配器,所以将adapt更改为应该工作。

由于匹配IResource也会匹配文件夹,因此您test会更好地检查内容类型ID:

   <adapt type="org.eclipse.core.resources.IResource">
      <test property="org.eclipse.core.resources.contentTypeId" value="org.eclipse.jdt.core.javaSource" />
   </adapt>