我正在尝试创建一个更新站点,它是我自己的功能和Eclipse功能的组合,我将其添加到“父”功能中,因此我在安装时只有一个功能选项。
我的一个插件依赖于Eclipse插件 - org.eclipse.jst.j2ee.webservice,它是org.eclipse.jst.enterprise_core.feature中的必需插件。将该功能添加到我的父功能时,只添加功能本身而不是必需的插件。我猜这是预料之中的。最佳做法是仅包含所需的插件还是有其他方法来处理这个问题?
<feature
id="com.my.parent.feature"
label="%featureName"
version="1.0.0.qualifier">
<includes
id="com.first.feature"
version="0.0.0"/>
<includes
id="com.second.feature"
version="0.0.0"/>
<includes
id="com.third.feature"
version="0.0.0"/>
<!-- Only adds feature to update site -->
<includes
id="org.eclipse.jst.enterprise_core.feature"
version="0.0.0"/>
<!-- plugin gets added to update site -->
<plugin
id="org.eclipse.jst.j2ee.webservice"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature>
<feature
id="org.eclipse.jst.enterprise_core.feature"
label="%featureName"
version="3.10.0.v201803082036"
provider-name="%providerName">
<requires>
<import plugin="org.eclipse.jst.j2ee.webservice"/>
<import plugin="org.eclipse.jst.j2ee.ejb"/>
<import plugin="org.eclipse.jst.j2ee.jca"/>
<import plugin="org.eclipse.jst.jee.ejb"/>
</requires>
</feature>
这是执行功能的常用方法。
“帮助”>“安装新软件”中的“联系所有更新站点以查找所需软件”选项将在相应的更新站点中找到包含的功能。这可确保使用用户发布的Eclipse的正确插件。
如果您在更新站点中包含插件,则它们可能是用户Eclipse的错误版本,并可能导致安装或运行时问题。
请注意,您应该将标准Eclipse功能添加为“依赖项”而不是包含的功能(这将最终位于feature.xml的requires
部分)。您可以在此处指定相关功能的最小版本。