Tycho 无法解决从产品到来自不同反应堆构建的 eclipse-feature 的引用
我有两个反应堆版本:
第一个构建了一些捆绑包和相应的功能.成功 clean install
后,该功能位于我的本地 Maven 存储库中.Tycho 还生成了 p2 元信息 ...-p2artifacts.xml
和 ...-p2metadata.xml
The first one builds some bundles and an according feature. After a successful clean install
the feature is in my local Maven repo. Tycho has also generated p2 meta information ...-p2artifacts.xml
and ...-p2metadata.xml
第二个构建包含一个基于功能的产品,它引用了第一个反应器中构建的功能.在尝试 clean install
时,Tycho 抱怨一个未解决的功能 - 另一个反应堆构建中的一个.
The second build contains a feature-based product which is referencing the feature built in the first reactor. When trying a clean install
Tycho complains about an unresolved feature - the one of the other reactor build.
未能执行目标org.eclipse.tycho:tycho-p2-repository-plugin:0.12.0:assemble-repository [...] [无法满足从 TestApp2 1.0.0 到 my.testlib.feature.feature.group [1.0.0.201109081051]."]
Failed to execute goal org.eclipse.tycho:tycho-p2-repository-plugin:0.12.0:assemble-repository [...] ["Unable to satisfy dependency from TestApp2 1.0.0 to my.testlib.feature.feature.group [1.0.0.201109081051]."]
如您所见,我使用的是 Tycho 0.12.0,当我设置了 pomDependencies=consider
标志时,它应该能够解析本地 maven 存储库的工件,我这样做了.
As you can see I'm using Tycho 0.12.0 which should be able to resolve artifacts of the local maven repository when the pomDependencies=consider
flag has been set, which I did.
我查看了本地 maven repo 生成的 p2 元信息,发现功能版本略有不同.p2artifacts.xml 中的功能版本如下:
I looked in the generated p2 meta information of my local maven repo and I found a little difference in the feature version. The version of the feature in the p2artifacts.xml is the following:
version='1.0.0.201109071453'
version='1.0.0.201109071453'
比较两个版本
1.0.0.201109081051 // what tycho looks for
1.0.0.201109071453 // what's in my local mvn repo
只有最后一位不同,可能是时间戳.
there is only a difference in the last bit, which might be a timestamp.
有谁知道为什么第谷抱怨这个未解决的功能?时间戳重要吗?
Does anyone know why tycho is complaining about the unresolved feature? Does the timestamp matter?
更新:由于第二次构建的时间戳会改变每个构建,我假设它是当前时间戳.
Update: Since the timestamp of the second build changes each build I assume it's the current timestamp.
推荐答案
您可能在 .product 中引用该功能时使用.qualifier"作为版本后缀.默认情况下,.qualifier"被构建时间戳替换,所以这可能不是你想要的.尝试改用0.0.0"(=latest).
probably you are using ".qualifier" as version suffix when referencing the feature in your .product. ".qualifier" is replaced by the build timestamp by default, so this is probably not what you want. Try using "0.0.0" (=latest) instead.
相关文章