命令使用 visibleWhen 不出现在上下文菜单中
command uses visibleWhen not appear in context menu
我想在 select Java Source Files
时添加上下文菜单命令,但是上下文菜单没有出现。
Java Source Files
的 class 类型是 CompilationUnit
我从 eclipse plugin-in spy
.
得到的
这是插件扩展声明(plugin.xml):
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<command
commandId="xml2javacode.commands.sampleCommand"
id="xml2javacode.menus.sampleCommand"
mnemonic="S">
<visibleWhen>
<with
variable="activeMenuSelection">
<iterate>
<instanceof
value="org.eclipse.jdt.core.dom.CompilationUnit">
</instanceof>
</iterate>
</with>
</visibleWhen>
</command>
</menuContribution>
</extension>
有几个 class 叫 CompilationUnit
,你选错了。
<instanceof
value="org.eclipse.jdt.internal.core.CompilationUnit">
</instanceof>
有效 - 但是这是一个内部 class 所以你不应该引用它。
检查 Java 源文件的常用方法是:
<adapt type="org.eclipse.core.resources.IResource">
<test property="org.eclipse.core.resources.contentTypeId" value="org.eclipse.jdt.core.javaSource" />
</adapt>
正在将选择调整为 IResource
,然后检查内容类型 ID。
我想在 select Java Source Files
时添加上下文菜单命令,但是上下文菜单没有出现。
Java Source Files
的 class 类型是 CompilationUnit
我从 eclipse plugin-in spy
.
这是插件扩展声明(plugin.xml):
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<command
commandId="xml2javacode.commands.sampleCommand"
id="xml2javacode.menus.sampleCommand"
mnemonic="S">
<visibleWhen>
<with
variable="activeMenuSelection">
<iterate>
<instanceof
value="org.eclipse.jdt.core.dom.CompilationUnit">
</instanceof>
</iterate>
</with>
</visibleWhen>
</command>
</menuContribution>
</extension>
有几个 class 叫 CompilationUnit
,你选错了。
<instanceof
value="org.eclipse.jdt.internal.core.CompilationUnit">
</instanceof>
有效 - 但是这是一个内部 class 所以你不应该引用它。
检查 Java 源文件的常用方法是:
<adapt type="org.eclipse.core.resources.IResource">
<test property="org.eclipse.core.resources.contentTypeId" value="org.eclipse.jdt.core.javaSource" />
</adapt>
正在将选择调整为 IResource
,然后检查内容类型 ID。