我在一些loaction中有属性文件,其中包含多个jar文件名。来自ANT的呼叫以及fectch存储库中的所有jar文件

时间:2012-07-10 06:28:51

标签: ant jar

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

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

请告诉我如何通过在蚂蚁(需要循环)

中进行瞄准和瞄准来做到这一点

1 个答案:

答案 0 :(得分:0)

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

实施例

的build.xml

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

<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>

的ivy.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>

此外,依赖项依赖项,因此常春藤也会为您管理这些依赖项。

ivysettings.xml

此文件控制常春藤下载的位置。在此示例中,配置了两个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>