1

在指定解析器常春藤模式时有没有办法能够产生以下输出?

C:/MyRepository/MyCompany/MyModule/1.2.3/4/ivy.xml

目前,[revision] 令牌解析为完整的 4 位版本号。我希望能够将修订的前三位数字用于模式的一部分,并将最后一位数字用于其下方的子文件夹。这是可能的还是我必须编写自定义的蚂蚁代码来做到这一点?

像这样的东西:

<resolvers>
    <filesystem name="myresolver">
        <ivy pattern="${my.dir}/[organisation]/[module]/[shortversion]/[rev]/ivy.xml" />
        <artifact pattern="${my.dir}/[organisation]/[module]/[shortversion]/[rev]/([target])[artifact].[ext]" />
    </filesystem>
</resolvers>

在哪里:

${my.dir} = C:/MyRepository/

常春藤令牌具有以下值:

[organisation] = MyCompany
[module] = MyModule
[shortversion] = 1.2.3
[rev] = 4

我意识到我正在编造这些虚构的标记(shortrevision 和 rev),但我想做的是获得修订号部分(主要、次要、构建、修订),以便我可以使用它们模式。

4

1 回答 1

1

ivy 支持可以附加到依赖声明的额外属性,如下所示:

<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra">
    ..
    <dependency org="MyCompany" name="MyCompany" rev="1.2.3" e:buildnum="4"/>

额外的属性在您的解析器模式中正常使用,如下所示:

<resolvers>
    <filesystem name="myresolver">
        <ivy pattern="${my.dir}/[organisation]/[module]/[revision]/[buildnum]/ivy.xml" />
        <artifact pattern="${my.dir}/[organisation]/[module]/[revision]/[buildnum]/[artifact].[ext]" />
    </filesystem>
</resolvers>
于 2012-04-27T18:34:17.380 回答