您的位置:首页 > 编程语言 > Java开发

eclipse插件开发--popMenu扩展点--找不到菜单项

2010-01-15 15:11 645 查看
目的:设计模式作业 -- eclipse插件ASTViewer



今天在添加给自己的插件添加popMenu扩展点时发现运行时找不到菜单项,找了许多资料发现我的问题在这里:

文件:plugin.xml

节点:<extension point="org.eclipse.ui.popupMenus">

<objectContribution

adaptable="true"

id="ASTViewer.contribution1"

objectClass="org.eclipse.core.resources.IFile">

我这里默认的popupMenus生成模板是没有这句话的,可以手工添加,也可以在图形化的extension
中的
adaptable上选中
true(推荐);



此外,找不到右键弹出菜单项的朋友需要注意,
由于此行为面向的行为时是
objectClass对应类型的东东,我的插件ASTViewer是为java源代码生成语法树的,这里的org.eclipse.core.resources.IFile对应的是我的java文件,举例说明,在左侧Package Explorer树形结构src下的*.java文件图标上点右键才会有相应的菜单项出现。祝好运~O(∩_∩)O哈哈~



我的plugin.xml

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension
         point="org.eclipse.ui.views">
      <category
            name="Cher's Plug-in"
            id="ASTViewer">
      </category>
      <view
            name="AST View"
            icon="icons/sample.gif"
            category="ASTViewer"
            class="astviewer.views.ASTView"
            id="astviewer.views.ASTView">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.eclipse.jdt.ui.JavaPerspective">
         <view
               ratio="0.5"
               relative="org.eclipse.ui.views.TaskList"
               relationship="right"
               id="astviewer.views.ASTView">
         </view>
      </perspectiveExtension>
   </extension>
   <extension
         point="org.eclipse.help.contexts">
      <contexts
            file="contexts.xml">
      </contexts>
   </extension>
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            id="ASTViewer.contribution1"
            objectClass="org.eclipse.core.resources.IFile">
         <menu
               id="ASTViewer.menu1"
               label="cher's AST"
               path="additions">
            <separator
                  name="group1">
            </separator>
         </menu>
         <action
               class="astviewer.popup.actions.ShowASTviewerAction"
               enablesFor="1"
               icon="icons/heart.gif"
               id="ASTViewer.newAction"
               label="ASTviewer"
               menubarPath="ASTViewer.menu1/group1">
         </action>
      </objectContribution>
   </extension
</plugin>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: