从URL获取文件列表

时间:2010-12-01 20:10:53

标签: ant download

我想以某种方式自动保存我的Netbeans Daily构建版本。

基本如下:

  1. http://bits.netbeans.org/download/trunk/nightly/latest/zip/
  2. 获取文件列表
  3. 下载文件(假设我对java.zip感兴趣)
  4. 解压
  5. 我有一个能够做2和3的蚂蚁脚本。我需要弄清楚如何做第一个。见下文:

    <?xml version="1.0" encoding="UTF-8"?>
    <project name="Netbeans Daily Build" basedir=".">
    <description>Updates the daily build</description>
    <property name="zip.name" value="netbeans-6.9.1-201007282301-ml-javase.zip"/>
    <property name="dist" value="Z:/Program Files/Netbeans 7.0/"/>
    <property name="zip.url"    value="http://bits.netbeans.org/download/trunk/nightly/latest/zip/"/>
    <fileset id="ant-contrib-jar" dir="./">
        <include name="ant-contrib-*.jar" />
    </fileset>
    <pathconvert property="ant-contrib-jar" refid="ant-contrib-jar" pathsep="," />
    <basename property="ant-contrib-filename" file="${ant-contrib-jar}"/>
    <property name="ant-contrib-loc" value="./${ant-contrib-filename}"/>
    <available file="${ant-contrib-loc}" property="ant-contrib.present"/>
    <fail unless="ant-contrib.present" message="The ant-contrib jar doesn't exist at: ${ant-contrib-loc}, can't build. Check your settings!" />
    <taskdef resource="net/sf/antcontrib/antcontrib.properties">
        <classpath>
            <pathelement location="${ant-contrib-loc}"/>
        </classpath>
    </taskdef>
    <!--Delete old copies of platforms-->
    <delete>
        <fileset dir="${dist}" includes="**/*.zip" excludes="${zip.name}"/>
    </delete>
    <available file="${zip.url}${zip.name}" property="file.exists"/>
    <if> 
        <not>
            <isset property="file.exists"/>
        </not>
        <then>
            <get src="${zip.url}${zip.name}" dest="./" skipexisting="true" verbose="true"/>
            <!--Only overwrite if newer
            <unzip src="${dist}/${zip.name}" dest="${dist}" overwrite="false"/>-->
        </then>
    </if>
    </project>
    

    我需要以某种方式找出要下载的正确文件名。 在批处理文件中执行所有操作(不使用ant)也是可以接受的。

    提前致谢!

2 个答案:

答案 0 :(得分:0)

您如何使用mercurial查看最新版本?这应该告诉你如何:http://netbeans.org/community/sources/hg.html

答案 1 :(得分:0)

看起来有一个项目。看起来我将加入团队......

http://kenai.com/projects/nb-nightly-updater