0

我有一个属性文件,其中包含以下格式的 jar 文件数 hellotest.jar=1.2.3 helootest1.jar=2.3.4 hello.jar=3.4.5

首先我需要在属性文件中更改 = 登录,然后从 ant 调用此 prpoerty 文件并将该 jar 文件从http://maven.tvl.com/nexus/udp/heloo/复制到某个特定位置(/tmp)

请让我知道如何通过在蚂蚁中的智慧和目标来做到这一点(需要循环)

4

1 回答 1

0

我认为您正在尝试构建自己的依赖项管理客户端。我的建议是使用已经了解如何从 Maven 存储库下载的Apache ivy 。

例子

构建.xml

ivy 检索任务可用于将项目依赖项下载到指定位置:

<project name="demo" default="build" xmlns:ivy="antlib:org.apache.ivy.ant">

    <target name="init" description="Resolve dependencies populate lib dir">
        <ivy:retrieve pattern="lib/[artifact]-[revision](-[classifier]).[ext]"/>
    </target>

常春藤.xml

此文件列表是您的项目依赖项。(比属性文件的集合简单):

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

    <dependencies>
        <dependency org="udp.heloo" name="hellotest"  rev="1.2.3" conf="default" />
        <dependency org="udp.heloo" name="helootest1" rev="2.3.4" conf="default" />
        <dependency org="udp.heloo" name="hello"      rev="3.4.5" conf="default" />
    </dependencies>
</ivy-module>

此外,依赖项也有依赖项,因此 ivy 也会为您管理这些依赖项。

常春藤设置.xml

该文件控制 ivy 从何处下载。在此示例中,配置了两个 Maven 存储库,Maven Central 和您在上面示例中列出的 Maven 存储库。

<ivysettings>
  <settings defaultResolver="all-repos" />
  <resolvers>
      <chain name="all-repos">
          <ibiblio name="central" m2compatible="true"/>
          <ibiblio name="extra-repo" m2compatible="true" root="http://maven.tvl.com/nexus"/>
      </chain>
    </chain>
  </resolvers>
</ivysettings>
于 2012-07-10T19:43:49.950 回答