我希望相同的依赖项解决两次,一次是 1.0.0 版,另一个是 2.-6ren">
gpt4 book ai didi

ant - Ivy - 两次解析相同的依赖项(使用两个不同的版本),到两个不同的文件

转载 作者:行者123 更新时间:2023-12-01 23:24:54 25 4
gpt4 key购买 nike

我有一个特殊的情况,我需要打包一些 jar,并且我需要一个 jar 的两个版本。我的 Ivy 定义如下所示:

<dependency org="blah" name="blahname" rev="1.0.0" conf="baseline->default" />

我希望相同的依赖项解决两次,一次是 1.0.0 版,另一个是 2.0.0 版。那可能吗?实现这一目标的最简单方法是什么。

最佳答案

使用 ivy 配置来创建和管理自定义的依赖项组。

例子

Ivy .xml

<ivy-module version="2.0">
<info organisation="com.myspotontheweb" module="demo"/>

<configurations>
<conf name="group1" description="First group of dependencies"/>
<conf name="group2" description="Second group of dependencies"/>
</configurations>

<dependencies>
<dependency org="commons-lang" name="commons-lang" rev="2.6" conf="group1->default"/>
<dependency org="commons-lang" name="commons-lang" rev="2.0" conf="group2->default"/>
</dependencies>

</ivy-module>

构建文件
<project name="demo" default="resolve" xmlns:ivy="antlib:org.apache.ivy.ant">

<target name="resolve">
<ivy:resolve/>

<ivy:retrieve pattern="lib/[conf]/[artifact]-[revision].[ext]"/>
</target>

</project>

备注:
  • 此示例使用检索任务来填充“lib”目录。另请参阅“cachepath”和“cachefileset”任务。

  • 结果

    Lib 目录中填充了所需的 jar。
    $ tree
    .
    |-- build.xml
    |-- ivy.xml
    `-- lib
    |-- group1
    | `-- commons-lang-2.6.jar
    `-- group2
    `-- commons-lang-2.0.jar

    关于ant - Ivy - 两次解析相同的依赖项(使用两个不同的版本),到两个不同的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10941293/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com