ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ehatc...@apache.org
Subject cvs commit: jakarta-ant/proposal/xdocs build.xml
Date Sun, 05 Jan 2003 21:23:43 GMT
ehatcher    2003/01/05 13:23:43

  Modified:    proposal/xdocs build.xml
  Log:
  now conditional exclusions are taken into account.  this was a cut-and-paste from Ant's
main build file - hopefully i snagged all the right stuff (at least it worked when I removed
the StarTeam API from my ANT_HOME/lib).
  
  this is also a major refactoring of the build file.  don't let the mess at the top scare
you - just look at the "gen" target and then the results in the build/gen directory.
  
  Revision  Changes    Path
  1.14      +404 -119  jakarta-ant/proposal/xdocs/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/proposal/xdocs/build.xml,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- build.xml	5 Jan 2003 16:18:04 -0000	1.13
  +++ build.xml	5 Jan 2003 21:23:43 -0000	1.14
  @@ -1,67 +1,383 @@
   <?xml version="1.0" ?>
  -<project name="XDoclet" default="main">
  +<project name="xdocs" default="default">
   
     <!--
       Give user a chance to override without editing this file
  -    (and without typing -D each time he compiles it)
  +    (and without typing -D each time)
     -->
  -  <property file=".ant.properties"/>
  -  <property file="${user.home}/.ant.properties"/>
  +  <property file="${user.home}/.${ant.project.name}.properties"/>
   
  -  <property name="src.dir"
  -            location="../../src/main/org/apache/tools/ant"/>
     <property name="src.root"
               location="../../src/main"/>
     <property name="docs.src"
               location="../../xdocs"/>
     <property name="build.dir" location="build"/>
     <property name="gen.dir" location="${build.dir}/gen"/>
  -
  -  <property name="template.dir" location="templates"/>
  -  <property name="task.properties.template"
  -            location="${template.dir}/task_defaults_properties.template"/>
  -  <property name="type.properties.template"
  -            location="${template.dir}/type_defaults_properties.template"/>
  -  <property name="task_xdoc.template"
  -            location="${template.dir}/task_xdoc.template"/>
  -  <property name="datatype_xdoc.template"
  -            location="${template.dir}/datatype_xdoc.template"/>
  -
  +  <property name="ant.package" value="org/apache/tools/ant"/>
  +  <property name="optional.package" value="${ant.package}/taskdefs/optional"/>
  +  <property name="optional.type.package" value="${ant.package}/types/optional"/>
  +  <property name="apache.resolver.type.package" value="${ant.package}/types/resolver"/>
  +  <property name="util.package" value="${ant.package}/util"/>
  +  <property name="regexp.package" value="${util.package}/regexp"/>
  +
  +  <path id="classpath">
  +  </path>
  +
  +  <!-- depends on JDK version -->
  +  <selector id="needs.jdk1.2+">
  +    <or>
  +      <filename name="${util.package}/optional/WeakishReference12*"/>
  +      <filename name="${optional.package}/extension/**"/>
  +      <filename name="${util.package}/optional/NoExitSecurityManager*"/>
  +      <filename name="${optional.package}/Javah*"/>
  +      <filename name="${optional.package}/metamata/*"/>
  +      <filename name="${optional.package}/ejb/EjbJar*"/>
  +      <filename name="${optional.package}/ejb/*DeploymentTool*"/>
  +      <filename name="${optional.package}/ejb/IPlanet*"/>
  +      <filename name="${optional.package}/ejb/Borland*"/>
  +      <filename name="${optional.package}/j2ee/*"/>
  +      <!-- uses the context classloader -->
  +      <filename name="${optional.package}/junit/JUnitClassLoaderTest*"/>
  +      <!-- use various 1.2 methods -->
  +      <filename name="${optional.package}/sitraka/**"/>
  +      <filename name="${optional.package}/ide/VAJ*"/>
  +      <filename name="${optional.package}/starteam/*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.jdk1.3+">
  +    <or>
  +      <filename name="${ant.package}/taskdefs/TestProcess*"/>
  +      <filename name="${optional.package}/extension/**"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.jdk1.4+">
  +    <filename name="${regexp.package}/Jdk14Regexp*"/>
  +  </selector>
  +
  +  <!-- classes that should be present in Sun based JVMs, but not in
  +       Kaffe for example -->
  +  <selector id="needs.sun.tools">
  +    <or>
  +      <filename name="${optional.package}/Native2Ascii*"/>
  +      <filename name="${optional.package}/Javah*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.sun.uue">
  +    <filename name="${ant.package}/taskdefs/email/UUMailer*"/>
  +  </selector>
  +  <selector id="needs.sun.b64">
  +    <or>
  +      <filename name="${ant.package}/taskdefs/Get*"/>
  +      <filename name="${optional.package}/splash/SplashTask*"/>
  +    </or>
  +  </selector>
  +
  +  <selector id="needs.trax">
  +    <or>
  +      <filename name="${optional.package}/TraXLiaison*"/>
  +      <filename name="${optional.package}/sitraka/**"/>
  +      <filename name="${optional.package}/metamata/MMetrics*"/>
  +      <filename name="${optional.package}/XsltTest*"/>
  +      <filename name="${ant.package}/types/XMLCatalogBuildFileTest*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.xalan1">
  +    <or>
  +      <filename name="${optional.package}/XalanLiaison*"/>
  +      <filename name="${optional.package}/junit/Xalan1Executor*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.xalan2">
  +    <filename name="${optional.package}/junit/Xalan2Executor*"/>
  +  </selector>
  +  <selector id="needs.xslp">
  +    <filename name="${optional.package}/XslpLiaison*"/>
  +  </selector>
  +  <selector id="needs.apache.resolver">
  +    <filename name="${apache.resolver.type.package}/**"/>
  +  </selector>
  +  <selector id="needs.junit">
  +    <filename name="${optional.package}/junit/**"/>
  +  </selector>
  +  <selector id="needs.jakarta.regexp">
  +    <filename name="${regexp.package}/JakartaRegexp*"/>
  +  </selector>
  +  <selector id="needs.jakarta.oro">
  +    <or>
  +      <filename name="${regexp.package}/JakartaOro*"/>
  +      <filename name="${optional.package}/perforce/*"/>
  +      <filename name="${optional.package}/metamata/MAudit*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.jakarta.bcel">
  +    <or>
  +      <filename name="${ant.package}/filters/util/JavaClassHelper*"/>
  +      <filename name="${util.package}/depend/bcel/*"/>
  +      <filename name="${optional.type.package}/depend/ClassFileSetTest*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.jakarta.log4j">
  +    <filename name="${ant.package}/listener/Log4jListener*"/>
  +  </selector>
  +  <selector id="needs.commons.logging">
  +    <filename name="${ant.package}/listener/CommonsLoggingListener*"/>
  +  </selector>
  +  <selector id="needs.bsf">
  +    <filename name="${optional.package}/Script*"/>
  +  </selector>
  +  <selector id="needs.stylebook">
  +    <filename name="${optional.package}/StyleBook*"/>
  +  </selector>
  +  <selector id="needs.javamail">
  +    <filename name="${ant.package}/taskdefs/email/MimeMailer*"/>
  +  </selector>
  +  <selector id="needs.icontract">
  +    <filename name="${optional.package}/IContract*"/>
  +  </selector>
  +  <selector id="needs.netrexx">
  +    <filename name="${optional.package}/NetRexxC*"/>
  +  </selector>
  +  <selector id="needs.weblogic.ejbc">
  +    <filename name="${optional.package}/ejb/Ejbc*"/>
  +  </selector>
  +  <selector id="needs.weblogic.ddcreator">
  +    <filename name="${optional.package}/ejb/DDCreator*"/>
  +  </selector>
  +  <selector id="needs.weblogic.server">
  +    <or>
  +      <filename name="${optional.package}/ejb/WLRun*"/>
  +      <filename name="${optional.package}/ejb/WLStop*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.netcomponents">
  +    <or>
  +      <filename name="${optional.package}/net/FTP*"/>
  +      <filename name="${optional.package}/net/TelnetTask*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.starteam">
  +    <or>
  +      <filename name="${optional.package}/scm/AntStarTeam*"/>
  +      <filename name="${optional.package}/starteam/*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.vaj">
  +    <filename name="${optional.package}/ide/VAJ*"/>
  +  </selector>
  +  <selector id="needs.antlr">
  +    <filename name="${optional.package}/ANTLR*"/>
  +  </selector>
  +  <selector id="needs.servletapi">
  +    <filename name="${optional.package}/ide/VAJ*Servlet*"/>
  +  </selector>
  +  <selector id="needs.jmf">
  +    <filename name="${optional.package}/sound/*"/>
  +  </selector>
  +  <selector id="needs.jai">
  +    <or>
  +      <filename name="${optional.package}/image/*"/>
  +      <filename name="${ant.package}/types/optional/image/*"/>
  +    </or>
  +  </selector>
  +  <selector id="needs.jdepend">
  +    <filename name="${optional.package}/jdepend/*"/>
  +  </selector>
  +  <selector id="needs.swing">
  +    <filename name="${optional.package}/splash/*"/>
  +  </selector>
  +
  +    <available property="jdk1.2+" classname="java.lang.ThreadLocal"/>
  +    <available property="jdk1.3+" classname="java.lang.StrictMath"/>
  +    <available property="jdk1.4+" classname="java.lang.CharSequence"/>
  +    <available property="kaffe" classname="kaffe.util.NotImplemented"/>
  +    <available property="bsf.present"
  +               classname="org.apache.bsf.BSFManager"
  +               classpathref="classpath"/>
  +    <condition property="netrexx.present">
  +      <and>
  +        <isset property="jdk1.2+"/>
  +        <available classname="netrexx.lang.Rexx"
  +                   classpathref="classpath"/>
  +      </and>
  +    </condition>
  +    <available property="trax.present"
  +               classname="javax.xml.transform.Transformer"
  +               classpathref="classpath"/>
  +    <condition property="trax.impl.present">
  +      <or>
  +        <and>
  +          <isset property="javax.xml.transform.TransformerFactory"/>
  +          <available classname="${javax.xml.transform.TransformerFactory}"
  +                     classpathref="classpath"/>
  +        </and>
  +        <available resource="META-INF/services/javax.xml.transform.TransformerFactory"/>
  +      </or>
  +    </condition>
  +    <available property="xslp.present"
  +               classname="com.kvisco.xsl.XSLProcessor"
  +               classpathref="classpath"/>
  +   <available property="apache.resolver.present"
  +              classname="org.apache.xml.resolver.tools.CatalogResolver"
  +              classpathref="classpath" />
  +    <available property="xalan.present"
  +               classname="org.apache.xalan.xslt.XSLTProcessorFactory"
  +               classpathref="classpath"/>
  +    <available property="xalan2.present"
  +               classname="org.apache.xalan.transformer.TransformerImpl"
  +               classpathref="classpath"/>
  +    <available property="ejb.ejbc.present"
  +               classname="weblogic.ejbc"
  +               classpathref="classpath"/>
  +    <available property="ejb.DDCreator.present"
  +               classname="weblogic.ejb.utils.DDCreator"
  +               classpathref="classpath"/>
  +    <available property="ejb.wls.present"
  +               classname="weblogic.Server"
  +               classpathref="classpath"/>
  +    <available property="junit.present"
  +               classname="junit.framework.TestCase"
  +               classpathref="classpath"/>
  +    <available property="netcomp.present"
  +               classname="com.oroinc.net.ftp.FTPClient"
  +               classpathref="classpath"/>
  +    <available property="starteam.present"
  +               classname="com.starbase.util.Platform"
  +               classpathref="classpath"/>
  +    <available property="antlr.present"
  +               classname="antlr.Tool"
  +               classpathref="classpath"/>
  +    <available property="vaj.present"
  +               classname="com.ibm.ivj.util.base.Workspace"
  +               classpathref="classpath"/>
  +    <available property="stylebook.present"
  +               classname="org.apache.stylebook.Engine"
  +               classpathref="classpath"/>
  +    <available property="jakarta.regexp.present"
  +               classname="org.apache.regexp.RE"
  +               classpathref="classpath"/>
  +    <available property="jakarta.oro.present"
  +               classname="org.apache.oro.text.regex.Perl5Matcher"
  +               classpathref="classpath"/>
  +    <available property="jmf.present"
  +               classname="javax.sound.sampled.Clip"
  +               classpathref="classpath"/>
  +    <available property="jai.present"
  +               classname="javax.media.jai.JAI"
  +               classpathref="classpath"/>
  +    <condition property="icontract.present">
  +        <and>
  +            <isset property="jdk1.2+"/>
  +            <available classname="com.reliablesystems.iContract.IContracted"
  +                       classpathref="classpath"/>
  +        </and>
  +    </condition>
  +    <available property="jdepend.present"
  +               classname="jdepend.framework.JDepend"
  +               classpathref="classpath"/>
  +    <available property="log4j.present"
  +               classname="org.apache.log4j.Category"
  +               classpathref="classpath"/>
  +    <available property="commons.logging.present"
  +               classname="org.apache.commons.logging.LogFactory"
  +               classpathref="classpath"/>
  +    <available property="xalan.envcheck"
  +               classname="org.apache.xalan.xslt.EnvironmentCheck"
  +               classpathref="classpath"/>
  +    <available property="which.present"
  +               classname="org.apache.env.Which"
  +               classpathref="classpath"/>
  +
  +    <available property="servlet.present"
  +               classname="javax.servlet.Servlet"
  +               classpathref="classpath"/>
  +
  +    <available property="xerces.present"
  +               classname="org.apache.xerces.parsers.SAXParser"
  +               classpathref="classpath"/>
  +    <condition property="bcel.present">
  +        <and>
  +            <isset property="jdk1.2+"/>
  +            <available classname="org.apache.bcel.Constants"
  +                       classpathref="classpath"/>
  +        </and>
  +    </condition>
  +    <available property="sunuue.present"
  +               classname="sun.misc.UUEncoder"
  +               classpathref="classpath"/>
  +
  +    <condition property="javamail.complete">
  +      <and>
  +        <available classname="javax.activation.DataHandler"
  +                   classpathref="classpath"/>
  +        <available classname="javax.mail.Transport"
  +                   classpathref="classpath"/>
  +      </and>
  +    </condition>
  +
  +    <condition property="some.regexp.support">
  +      <or>
  +        <isset property="jdk1.4+"/>
  +        <isset property="jakarta.regexp.present"/>
  +        <isset property="jakarta.oro.present"/>
  +      </or>
  +    </condition>
  +
  +    <condition property="sun.tools.present">
  +      <and>
  +        <available classname="sun.tools.native2ascii.Main"/>
  +        <available classname="com.sun.tools.javah.Main"/>
  +      </and>
  +    </condition>
  +
  +    <available property="base64.present" classname="sun.misc.BASE64Encoder"/>
  +
  +    <condition property="jasper.present">
  +      <and>
  +        <available classname="org.apache.jasper.compiler.Compiler"/>
  +        <available classname="org.apache.jasper.JasperException"/>
  +      </and>
  +    </condition>
  +
  +    <condition property="swing.present">
  +      <or>
  +        <and>
  +          <isset property="jdk1.2+"/>
  +          <not>
  +            <isset property="kaffe"/>
  +          </not>
  +        </and>
  +        <available classname="javax.swing.ImageIcon"
  +                   classpathref="classpath"/>
  +      </or>
  +    </condition>
  +
  +    <available property="rhino.present"
  +               classname="org.mozilla.javascript.Scriptable"
  +               classpathref="classpath"/>
  +    <available property="beanshell.present"
  +               classname="bsh.StringUtil"
  +               classpathref="classpath"/>
  +
  +  <path id="xdoclet.classpath">
  +    <path>
  +      <fileset dir="lib" includes="*.jar"/>
  +    </path>
  +    <path>
  +      <fileset dir="${ant.home}/lib" includes="*.jar"/>
  +    </path>
  +  </path>
   
     <target name="init">
       <mkdir dir="${build.dir}" />
       <mkdir dir="${gen.dir}" />
  -    <property name="xdoclet.extra.classpath" value="" />
  -
  -    <!-- hack, this should be outside a target but ${build.dir} gets stripped ?? -->
  -    <path id="xdoclet.classpath">
  -      <path>
  -        <fileset dir="lib" includes="*.jar"/>
  -      </path>
  -
  -      <path>
  -        <fileset dir="${ant.home}/lib" includes="*.jar"/>
  -      </path>
  -      <pathelement location="${build.dir}"/>
  -      <pathelement path="${xdoclet.extra.classpath}" />
  -      <pathelement location="."/>
  -    </path>
  -
  -    <property name="the.classpath" refid="xdoclet.classpath"/>
  -    <echo>the.classpath = ${the.classpath}</echo>
     </target>
   
  -
     <target name="clean">
       <delete dir="${build.dir}"/>
  +    <delete dir="${gen.dir}"/>
     </target>
   
  -  <target name="compile" depends="init">
  -    <javac srcdir="src" destdir="${build.dir}"
  -           debug="true" classpathref="xdoclet.classpath"/>
  -  </target>
  -
  -  <target name="gen2" depends="init">
  +  <target name="gen" depends="init">
       <taskdef name="antdoclet"
                classname="xdoclet.modules.apache.ant.AntDocletTask"
                classpathref="xdoclet.classpath"/>
  @@ -69,88 +385,57 @@
                  excludedtags="@version,@author"
                  force="${xdoclet.force}">
         <fileset dir="${src.root}">
  -        <include name="**/*.java" unless="class.name"/>
  -        <include name="**/*${class.name}*.java" if="class.name"/>
  -        <exclude name="**/*${exclude.class.name}*.java" if="exclude.class.name"/>
  +      <selector id="conditional-patterns">
  +        <not>
  +          <or>
  +            <selector refid="needs.jdk1.2+" unless="jdk1.2+"/>
  +            <selector refid="needs.jdk1.3+" unless="jdk1.3+"/>
  +            <selector refid="needs.jdk1.4+" unless="jdk1.4+"/>
  +            <selector refid="needs.sun.tools" unless="sun.tools.present"/>
  +            <selector refid="needs.sun.uue" unless="sunuue.present"/>
  +            <selector refid="needs.sun.b64" unless="base64.present"/>
  +
  +            <selector refid="needs.trax" unless="trax.present"/>
  +            <selector refid="needs.xalan1" unless="xalan.present"/>
  +            <selector refid="needs.xalan2" unless="xalan2.present"/>
  +            <selector refid="needs.xslp" unless="xslp.present"/>
  +            <selector refid="needs.apache.resolver" unless="apache.resolver.present"/>
  +            <selector refid="needs.junit" unless="junit.present"/>
  +            <selector refid="needs.jakarta.regexp"
  +                      unless="jakarta.regexp.present"/>
  +            <selector refid="needs.jakarta.oro" unless="jakarta.oro.present"/>
  +            <selector refid="needs.jakarta.bcel" unless="bcel.present"/>
  +            <selector refid="needs.jakarta.log4j" unless="log4j.present"/>
  +            <selector refid="needs.commons.logging"
  +                      unless="commons.logging.present"/>
  +            <selector refid="needs.bsf" unless="bsf.present"/>
  +            <selector refid="needs.stylebook" unless="stylebook.present"/>
  +            <selector refid="needs.javamail" unless="javamail.complete"/>
  +            <selector refid="needs.icontract" unless="icontract.present"/>
  +            <selector refid="needs.netrexx" unless="netrexx.present"/>
  +            <selector refid="needs.weblogic.ejbc" unless="ejb.ejbc.present"/>
  +            <selector refid="needs.weblogic.ddcreator"
  +                      unless="ejb.DDCreator.present"/>
  +            <selector refid="needs.weblogic.server" unless="ejb.wls.present"/>
  +            <selector refid="needs.netcomponents" unless="netcomp.present"/>
  +            <selector refid="needs.starteam" unless="starteam.present"/>
  +            <selector refid="needs.vaj" unless="vaj.present"/>
  +            <selector refid="needs.antlr" unless="antlr.present"/>
  +            <selector refid="needs.servletapi" unless="servlet.present"/>
  +            <selector refid="needs.jmf" unless="jmf.present"/>
  +            <selector refid="needs.jai" unless="jai.present"/>
  +            <selector refid="needs.jdepend" unless="jdepend.present"/>
  +            <selector refid="needs.swing"  unless="swing.present"/>
  +          </or>
  +        </not>
  +      </selector>
         </fileset>
         <taskdescriptor/>
         <taskdefproperties/>
       </antdoclet>
     </target>
  -<!--
  -      <taskdescriptor templateFile="${task_xdoc.template}"
  -             destinationfile="{0}.xml"
  -      />
  -      <template  templateFile="${task.properties.template}"
  -             destinationfile="task_defaults.properties"
  -      />
  --->
  -
  -  <target name="gen" depends="compile">
  -    <taskdef name="xdocs"
  -             classname="org.apache.tools.ant.xdoclet.AntXDocletTask"
  -             classpathref="xdoclet.classpath"/>
  -    <xdocs sourcepath="${src.root}"
  -           destdir="${gen.dir}"
  -           mergedir="${basedir}/src"
  -           classpathref="xdoclet.classpath">
  -      <fileset dir="${src.dir}">
  -        <include name="**/*.java" unless="class.name"/>
  -        <include name="**/*${class.name}*.java" if="class.name"/>
  -        <exclude name="**/*${exclude.class.name}*.java" if="exclude.class.name"/>
  -      </fileset>
  -
  -      <!-- Generate XML task descriptor files -->
  -      <tasks templateFile="${task_xdoc.template}"
  -             destinationfile="{0}.xml"/>
  -
  -      <!-- Generate XML datatype descriptor files -->
  -<!--      <datatypes templateFile="${datatype_xdoc.template}"
  -                 destdir="${gen.dir}/datatypes"
  -                 destinationfile="{0}.xml"/> -->
  -
  -      <!-- @todo - with some additional logic in these subtasks, they
  -           could be used similar to above instead of <template> -->
  -      <!-- Generate task defaults.properties -->
  -      <template subTaskClassName="org.apache.tools.ant.xdoclet.TaskSubTask"
  -                templateFile="${task.properties.template}"
  -                destinationfile="task_defaults.properties"/>
  -
  -      <!-- Generate datatype defaults.properties -->
  -<!--      <template subTaskClassName="org.apache.tools.ant.xdoclet.DatatypeSubTask"
  -                templateFile="${type.properties.template}"
  -                destinationfile="type_defaults.properties"/> -->
  -
  -      <!-- Generate to-do list -->
  -<!--      <info destdir="${gen.dir}/todo/ant"
  -            header="To-do List"
  -            projectname="Ant"/> -->
  -    </xdocs>
  -
  -  </target>
  -
  -  <target name="document" depends="init">
  -    <taskdef name="document"
  -             classname="xdoclet.doc.DocumentDocletTask"
  -             classpathref="xdoclet.classpath"/>
  -    <document sourcepath="${basedir}/src"
  -           destdir="${gen.dir}"
  -           mergedir="${basedir}/src"
  -           classpathref="xdoclet.classpath">
  -      <fileset dir="${basedir}/src">
  -        <include name="**/*.java" unless="class.name"/>
  -        <include name="**/${class.name}.java" if="class.name"/>
  -      </fileset>
  -
  -      <info destdir="${gen.dir}/todo/xdocs"/>
  -
  -      <!-- This is currently broken, checking into...
  -      <documenttags/> -->
  -
  -    </document>
  -  </target>
   
  -  <target name="docs"> <!-- depends=gen -->
  +  <target name="docs"> <!-- depends="gen" -->
       <mkdir dir="${build.dir}/docs" />
       <!-- Copy stuff so things are in the correct relative location. -->
       <copy todir="${build.dir}/docs">
  @@ -164,7 +449,7 @@
       <ant dir="dvsl"/>
     </target>
   
  -  <target name="main" depends="gen,document"/>
  +  <target name="default" depends="gen"/>
   
   </project>
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:ant-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-dev-help@jakarta.apache.org>


Mime
View raw message