构建更新站点时Tycho缺少插件

时间:2014-09-22 13:55:14

标签: maven tycho eclipse-pde

当我通过tycho-maven-plugin构建我的项目时,我遇到以下消息:

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: foo-updatesite raw:0.2.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):0.2.0-SNAPSHOT
[ERROR]   Missing requirement for filter properties ~= $0: foo-feature.feature.group 0.2.0.qualifier requires 'foo-plugin 0.0.0' but it could not be found
[ERROR]   Cannot satisfy dependency: foo-updatesite raw:0.2.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):0.2.0-SNAPSHOT depends on: foo-feature.feature.group [0.2.0,0.2.1)

构建更新站点时会发生此错误。插件和功能正常构建。我从PDE构建更新站点没有问题。

项目结构很常见:有一个包含pom包装的父项目和三个模块:插件,功能和更新。当然,我从父项目中调用mvn clean package

出现此错误的原因是什么?我该如何调试呢?

UPD :我尝试了很多东西:删除了“祖父母”pom,删除了SNAPSHOT /限定符,玩了配置。但是,我找到了解决方案:我切换到tycho 0.19而不是0.21。所以我想tycho 0.21中有一个错误。

2 个答案:

答案 0 :(得分:1)

我有相同的错误消息:

Missing requirement for filter properties ~= $0: foo-feature.feature.group 0.2.0.qualifier requires 'foo-plugin 0.0.0' but it could not be found

由于某种原因,该错误(也)表示foo-plugin存在两次。

因此,在您的情况下,请打开“目标编辑器”的“内容”选项卡,并确保两个不同的版本中没有foo-plugin。我通常的做法是,如果两个功能包含相同的捆绑包。

答案 1 :(得分:0)

错误消息

Missing requirement for filter properties ~= $0

表示您在foo-plugin中包含插件feature.xml时已定义了环境过滤器。但是,这并不能解释您所看到的依赖项解析错误。我可以重现错误消息的唯一方法是使用与POM中的环境配置不匹配的值在插件的清单中添加Eclipse-PlatformFilter标头。