当我通过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中有一个错误。
答案 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
标头。