Ant 如何在ivy中使用[ext]变量?

Ant 如何在ivy中使用[ext]变量?,ant,ivy,Ant,Ivy,我想使用url解析器下载。依赖项是JS或XML文件。所以,我用了: 及 该文件保存在.jar扩展名中。以下常春藤文档值得深入研究: 第一个问题是,您的url解析器没有配置为读取远程模块的常春藤文件,忽略了常春藤最佳实践中的第一个建议,即在每个模块中使用常春藤文件。如果没有模块元数据,ivy将假定您正在尝试下载JAR文件 第二个问题是,您似乎没有使用常春藤存储库来存储您的文件。以下依赖项声明: <dependency org="yourorg" name="module1" rev="9.1

我想使用url解析器下载。依赖项是JS或XML文件。所以,我用了:


该文件保存在.jar扩展名中。

以下常春藤文档值得深入研究:

第一个问题是,您的url解析器没有配置为读取远程模块的常春藤文件,忽略了常春藤最佳实践中的第一个建议,即在每个模块中使用常春藤文件。如果没有模块元数据,ivy将假定您正在尝试下载JAR文件

第二个问题是,您似乎没有使用常春藤存储库来存储您的文件。以下依赖项声明:

<dependency org="yourorg" name="module1" rev="9.1"/>
org字段用于指定发布模块的组织单位,而不是服务器主机名

我怀疑你不是真的对建立文件存储库感兴趣,只是想说服ivy下载并缓存文件?在这种情况下,我建议阅读下面的答案,该答案在上用于执行类似操作:

实例 ivy.xml 注:

每个依赖项声明每个工件的类型,以及附加的hostname属性。 如果远程模块具有ivy.xml,则该部分也会存储此工件信息。 额外的工件展示了ivy在启用任何种类的自定义属性元数据方面的能力。 ivysettings.xml
演示冲突解决程序如何使用标准属性和自定义主机名。

以下常春藤文档值得深入研究:

第一个问题是,您的url解析器没有配置为读取远程模块的常春藤文件,忽略了常春藤最佳实践中的第一个建议,即在每个模块中使用常春藤文件。如果没有模块元数据,ivy将假定您正在尝试下载JAR文件

第二个问题是,您似乎没有使用常春藤存储库来存储您的文件。以下依赖项声明:

<dependency org="yourorg" name="module1" rev="9.1"/>
org字段用于指定发布模块的组织单位,而不是服务器主机名

我怀疑你不是真的对建立文件存储库感兴趣,只是想说服ivy下载并缓存文件?在这种情况下,我建议阅读下面的答案,该答案在上用于执行类似操作:

实例 ivy.xml 注:

每个依赖项声明每个工件的类型,以及附加的hostname属性。 如果远程模块具有ivy.xml,则该部分也会存储此工件信息。 额外的工件展示了ivy在启用任何种类的自定义属性元数据方面的能力。 ivysettings.xml 演示冲突解决程序如何使用标准属性和自定义主机名

<dependency org="yourorg" name="module1" rev="9.1"/>
http://yourorg/module1-9.1.jar
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra">
    ..
    ..
    <dependency org="yourorg" name="yourmodule1" rev="9.1">
       <artifact name="file1"  e:hostname="www.server1.com" type="xml"/>
       <artifact name="file2"  e:hostname="www.server1.com" type="xml"/>
    </dependency>

    <dependency org="yourorg" name="yourmodule2" rev="9.1">
       <artifact name="file3"  e:hostname="www.server2.com" type="xml"/>
       <artifact name="file4"  e:hostname="www.server2.com" type="xml"/>
    </dependency>
    ..
..
<url name="urlresolver">
      <artifact pattern="http://[hostname]/files/[organisation]/[module]-[revision].[ext]" />
</url>
..