2012-08-10 73 views
2

我在Eclipse中開發了一個插件,當用戶右鍵單擊文件時添加了一個選項。但它只出現在java的角度,而不是其他任何東西。任何人都可以告訴我原因嗎?java透視中的eclipse-plugins

這裏是我的plugin.xml:

<?xml version="1.0"?> 
<plugin> 
    <extension point="org.eclipse.ui.menus"> 
     <menuContribution locationURI="popup:org.eclipse.jdt.ui.PackageExplorer"> 
      <command commandId="plugin.showDifferences" label="Show Differences" style="push"> 
       <activeWhen> 
        <iterate> 
         <adapt type="org.eclipse.core.resources.IResource"> 
          <test property="org.eclipse.core.resources.name" value="*.java"/> 
         </adapt> 
        </iterate> 
       </activeWhen> 
      </command> 
     </menuContribution> 
    </extension> 
    <extension point="org.eclipse.ui.commands"> 
     <command defaultHandler="plugin_demo.Differences" id="plugin.showDifferences" name="Differences" /> 
    </extension> 
</plugin> 
+0

請張貼一些代碼。 – Thinhbk 2012-08-10 06:03:36

回答

3

這是因爲Java透視圖的Package Explorer視圖是一個不同的野獸比出現在其他視角Project Explorer視圖。如果您希望右鍵單擊選項出現在兩個視圖中,則必須添加另一個<menuContribution>,以將其貢獻給org.eclipse.ui.navigator.ProjectExplorer視圖。這樣的事情:

<menuContribution locationURI="popup:org.eclipse.ui.navigator.ProjectExplorer#PopupMenu?after=additions"> 
    <command commandId="plugin.showDifferences" label="Show Differences" style="push"> 
     <activeWhen> 
      <iterate> 
       <adapt type="org.eclipse.core.resources.IResource"> 
        <test property="org.eclipse.core.resources.name" value="*.java"/> 
       </adapt> 
      </iterate> 
     </activeWhen> 
    </command> 
</menuContribution>