我已经设置了一个tycho
构建maven
,它像魅力一样构建功能和插件。
问题是,即使我在插件条目中显式设置了unpack="true"
feature.xml
,该功能也不会在target
文件夹中解压缩,而它应该。
第谷版本:1.0.0
我从feature.xml
文件中的插件条目:
<plugin
id="xx.xx.xx"
download-size="0"
install-size="0"
version="2.0.3.qualifier"
unpack="false"/>
<plugin
id="should.be.unpacked"
download-size="0"
install-size="0"
version="1.1.2.qualifier"
unpack="true"/>
<plugin
id="xx.xx.xx"
download-size="0"
install-size="0"
version="1.0.0.qualifier"
unpack="false"/>
<plugin
id="xx.xx.xx"
download-size="0"
install-size="0"
version="1.1.1.qualifier"
unpack="false"/>
<plugin
id="xx.xx.xx"
download-size="0"
install-size="0"
version="1.0.0.qualifier"
unpack="false"/>
我没有该功能的特定pom.xml
文件,因为我为第谷启用了无球构建。
参见这个 Eclipse Bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi?id=409097 所以基本上第谷并不关心功能属性"解包",如果你想解压缩一个插件或片段,你必须在 MANIFEST 中指定以下内容。插件/片段的MF:
Eclipse-BundleShape: dir
我认为unpack="true"
不能做你所追求的:它控制在安装到产品中时何时解压缩功能,而不是控制它是否以解压缩的形式临时存储在项目的target
目录下。(特别是,即使设置了unpack="true"
,Tycho 也会始终打包您的功能,以将其作为单个文件安装在本地 Maven 存储库中。
为什么无论如何都需要在target
文件夹中解压缩该功能?它是否在构建的后续步骤中消耗?如果是这样,一个简单的dependency:unpack
执行可能更适合您。