代码之家  ›  专栏  ›  技术社区  ›  Mike Q

在Ant中创建类路径jar的配置列表

  •  0
  • Mike Q  · 技术社区  · 14 年前

    我有一个像这样的蚂蚁任务中的罐子列表。

      <path id="lib.path.id">
        <fileset dir="${lib.dir}">
          <include name="jar/*.jar"/>
        </fileset>
      </path>
    

    我想把它展开成这样的配置文件。

    wrapper.java.classpath.1=../lib/activation.jar
    wrapper.java.classpath.2=../lib/bcel.jar
    wrapper.java.classpath.3=../lib/c3p0-0.8.4.5.jar
    wrapper.java.classpath.4=../lib/cglib-full-2.0.2.jar
    ....
    

    我怎样才能在蚂蚁身上做到这一点?

    3 回复  |  直到 10 年前
        1
  •  1
  •   Romain Linsolas    14 年前

    Tanuki Service Wrapper for Java wrapper.conf

    wrapper.java.classpath.1=/path/to/lib/*.jar
    wrapper.java.classpath.2=/any/other/lib/directory/*.jar
    wrapper.java.classpath.3=/a/path/to/one/library/my-library.jar
    ...
    
        2
  •  0
  •   Eran Harel    14 年前

    pathconvert task

    <pathconvert targetos="unix" property="wrapper.java.classpath" refid="lib.path.id"/>
    

    propertyfile

    <propertyfile file="my.properties">
      <entry  key="wrapper.java.classpath" value="${wrapper.java.classpath}"/>
    </propertyfile>
    
        3
  •  0
  •   Frank    14 年前

    <project name="util">
    
    <property name="lib.dir" value="${ant.library.dir}"/>
    
    <target name="gen-property-file" description="">
    
        <path id="lib.path.id">
            <fileset dir="${lib.dir}">
                <include name="*.jar"/>
            </fileset>
        </path>
    
        <pathconvert pathsep="${line.separator}wrapper.java.classpath.Number="             
            property="echo.path.compile"             
            refid="lib.path.id">
        </pathconvert>
    
        <echo file="my.properties">wrapper.java.classpath.Number=${echo.path.compile}</echo>
    
    </target>
    

    此代码段生成文件my.properties:

    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-antlr.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-apache-bcel.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-apache-bsf.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-apache-log4j.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-apache-oro.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32\eclipse\plugins\org.apache.ant_1.7.1.v20100518-1145\lib\ant-apache-regexp.jar
    wrapper.java.classpath.Number=D:\Programme\eclipse-rcp-helios-SR1-win32
    

    您可以手动或用脚本替换.number和basepath。