Iva*_*van 11 java eclipse osgi eclipse-rcp tycho
我有一个osgi项目,分为3个存储库.每个存储库都有自己的构建到使用Tycho的p2存储库:
Repo1 -> P2 repo 1
Repo2 -> P2 repo 2
Repo3 -> P2 repo 3
Run Code Online (Sandbox Code Playgroud)
此外,每个存储库都有一个目标定义文件,其中包含来自第三方p2存储库和另一个项目存储库的捆绑包(上面的P2 repo1,P2 repo 2或P2 repo 3).Repo2包含对Repo1包的依赖,Repo3与Repo1和Repo2包有依赖关系:
Repo1 Target Definition -> Eclipse Orbit P2
Repo2 Target Definition -> Eclipse Orbit P2, P2 repo1
Repo3 Target Definition -> Eclipse Orbit P2, P2 repo1, P2 repo2
Run Code Online (Sandbox Code Playgroud)
现在我有以下问题.构建第一个存储库后,P2 repo1存储库已更新,并包含具有新快照版本的功能.Repo2和Repo3的目标定义取决于Repo1包的先前快照版本,如果不更新相应的目标定义,则无法构建这些存储库(在Eclipse中,目标编辑器中有更新按钮).
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="com.myproduct.feature.api.game.feature.group" version="1.0.0.201509251400"/>
<unit id="com.myproduct.feature.impl.game.feature.group" version="1.0.0.201509251400"/>
<repository location="http:............../target/repository/"/>
</location>
Run Code Online (Sandbox Code Playgroud)
所以不可能自动构建所有3个repos,因此构建过程变得过于复杂:
等等....
我现在想使用git子模块来集成这3个repos以避免p2存储库或在一个存储库中移动所有存储库.
Jon*_*ham 11
0.0.0
我不知道如何使用目标编辑器编辑.target文件来实现此目的,但您可以通过在XML或文本编辑器中编辑来输入目标文件中的版本号,如下所示:0.0.0
<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="com.example.feature.group" version="0.0.0"/>
<repository id="my_repo" location="http://my/repo/path"/>
</location>
Run Code Online (Sandbox Code Playgroud)
通过指定0.0.0
目标文件中的版本号,您应该从p2存储库中获取最新版本的单元.
也就是说,使用这种懒惰(更多关于下面的名称)方式指定版本存在严重的缺点.这使得返回并重建项目的旧版本非常困难,因为旧版本将从p2存储库而不是正确的版本中提取最新版本的依赖项.
而不是使用目标编辑器进行编辑,而是使用优秀的"目标平台定义DSL和生成器".它允许您更明智地编辑目标文件.在上面的例子中,您可以使用lazy
version关键字指定您想要0.0.0
的版本号.它看起来像这样:
location "http://my/repo/path" my_repo {
com.example.feature.group lazy
}
Run Code Online (Sandbox Code Playgroud)
可以在命令行调用生成器(例如,从pom.xml),这应该允许您在.tpd文件中保留版本号.如果.tpd文件中没有版本号,则生成的.target文件将具有已解析的版本号到最新版本.如果将生成的.target文件保留为构建工件的一部分,则可以根据正确的依赖关系重建软件的旧版本.
归档时间: |
|
查看次数: |
834 次 |
最近记录: |