| |
| <!-- This file is an ANT build script. ANT is a Java based build tool. --> |
| <!-- It is available from http://ant.apache.org --> |
| |
| |
| <!-- ================================================================= --> |
| <!-- NOTE: all directories are relative to logging-log4j/ --> |
| <!-- the parent of build/ --> |
| <!-- ================================================================= --> |
| <project name="log4j" default="usage" basedir="." > |
| |
| |
| <!-- The build.properties file defines the parth to local jar files --> |
| <property file="build.properties"/> |
| |
| <!-- Read the system environment variables and stores them in properties, --> |
| <!-- prefixed with "env". --> |
| <property environment="env"/> |
| |
| <property name="version" value="1.2.13rc1"/> |
| |
| <!-- The base directory relative to which most targets are built --> |
| <property name="base" value="."/> |
| |
| |
| <property name="deprecation" value="on"/> |
| |
| <!-- The directory where source files are stored. --> |
| <property name="java.source.dir" value="src/java/"/> |
| |
| <!-- The directory where the package-list file is found, ./ or --> |
| <!-- build/ --> |
| <property name="packaging.dir" value="build"/> |
| |
| <!-- distribution directory --> |
| <property name="dist.dir" value="dist"/> |
| |
| <!-- Destination for compiled files --> |
| <property name="javac.dest" value="${dist.dir}/classes"/> |
| |
| <!-- Destination for generated jar files --> |
| <property name="jar.dest" value="${dist.dir}/lib"/> |
| |
| <!-- The jar file that the jar task will generate --> |
| <property name="jar.filename" value="log4j-${version}.jar"/> |
| |
| <!-- Destination for documentation files --> |
| <property name="docs.dest" value="./docs"/> |
| <!-- Source directory for xml docs --> |
| <property name="xdocs.src" value="./src/xdocs"/> |
| |
| |
| <!-- Destination for javadoc generated files --> |
| <property name="javadoc.dest" value="docs/api"/> |
| |
| <!-- Icons source directory. --> |
| <property name="icons.source" value="icons"/> |
| |
| <!-- The stem where most log4j source code is located. --> |
| <property name="stem" value="org/apache/log4j"/> |
| |
| <!-- Some targets needs a more precise stem. --> |
| <property name="BSTEM" value="${java.source.dir}/${stem}"/> |
| |
| <!-- Original manifest.mf file before filtering. --> |
| <property name="manifest.src" value="build/manifest.mf"/> |
| |
| <!-- Directory where release images go. --> |
| <property name="dist.images" value="${dist.dir}/images"/> |
| |
| <!-- Directory for temporary files. --> |
| <property name="dist.tmp" value="${dist.dir}/tmp"/> |
| |
| <property name="javac.source" value="1.1"/> |
| <property name="javac.target" value="1.1"/> |
| |
| |
| <!-- Construct compile classpath --> |
| <path id="compile.classpath"> |
| <pathelement location="${build.home}/classes"/> |
| <pathelement location="${javamail.jar}"/> |
| <pathelement location="${activation.jar}"/> |
| <pathelement location="${jaxp.jaxp.jar}"/> |
| <pathelement location="${jms.jar}"/> |
| <pathelement location="${jmx.jar}"/> |
| <pathelement location="${jmx-extra.jar}"/> |
| <pathelement location="${jndi.jar}"/> |
| </path> |
| |
| <!-- Construct classpath for building the html pages--> |
| <path id="site.classpath"> |
| <fileset dir="${logging-site}/lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </path> |
| |
| <!-- ================================================================= --> |
| <!-- Default target --> |
| <!-- ================================================================= --> |
| |
| <target name="usage"> |
| <echo> |
| |
| These are the targets supported by this ANT build scpript: |
| |
| build - compile all project files, if a certain library is missing, |
| then the compilation of its dependents are skipped. |
| |
| javadoc - build project javadoc files |
| |
| jar - build log4j-core and log4j jar files |
| |
| dist - will create a complete distribution in dist/ |
| Setting the env variable NO_JAVADOC will build the distribution |
| without running the javadoc target. |
| |
| release - will create a complete distribution in dist/ |
| using stricter settings for public distribution. |
| </echo> |
| </target> |
| |
| <target name="jaxpCheck"> |
| <available classname="javax.xml.parsers.DocumentBuilderFactory" |
| property="jaxp-present"/> |
| </target> |
| |
| <target name="jaxp" depends="jaxpCheck" if="jaxp-present"> |
| <echo message="JAXP present."/> |
| </target> |
| |
| |
| <target name="jmxCheck"> |
| <condition property="jmx-present" value="true"> |
| <and> |
| <available classname="javax.management.MBeanInfo" |
| classpath="${jmx.jar}"/> |
| <available classname="com.sun.jdmk.comm.HtmlAdaptorServer"> |
| <classpath> |
| <pathelement location="${jmx.jar}"/> |
| <pathelement location="${jmx-extra.jar}"/> |
| </classpath> |
| </available> |
| </and> |
| </condition> |
| </target> |
| <target name="jmx" depends="jmxCheck" if="jmx-present"> |
| <echo message="JMX is present."/> |
| </target> |
| |
| |
| <target name="jmsCheck"> |
| <available classname="javax.jms.Message" property="jms-present"> |
| <classpath> |
| <pathelement location="${jms.jar}"/> |
| </classpath> |
| </available> |
| </target> |
| <target name="jms" depends="jmsCheck" if="jms-present"> |
| <echo message="JMS is present."/> |
| </target> |
| |
| <target name="jndiCheck"> |
| <available classname="javax.naming.Context" property="jndi-present"/> |
| </target> |
| <target name="jndi" depends="jndiCheck" if="jndi-present"> |
| <echo message="JNDI is present."/> |
| </target> |
| |
| <target name="javamailCheck"> |
| <available classname="javax.mail.Message" property="javamail-present"> |
| <classpath> |
| <pathelement location="${javamail.jar}"/> |
| </classpath> |
| </available> |
| </target> |
| <target name="javamail" depends="javamailCheck" if="javamail-present"> |
| <echo message="JAVAMAIL is present."/> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Initialize variables --> |
| <!-- NOTE: all directories are relative to jakarta-log4j/ --> |
| <!-- ================================================================= --> |
| <target name="init"> |
| <tstamp /> |
| <property name="javac.includeAntRuntime" value="true"/> |
| <property name="javac.includeJavaRuntime" value="false"/> |
| <property name="javac.fork" value="false"/> |
| </target> |
| |
| <target name="build" depends="init, build.core, build.examples, build.xml, |
| build.javamail, build.jms, build.jmx"/> |
| |
| <target name="build.core" depends="init"> |
| <mkdir dir="${javac.dest}" /> |
| <javac srcdir="${java.source.dir}" |
| destdir="${javac.dest}" |
| includes="${stem}/**/*.java, |
| ${stem}/xml/XMLLayout.java" |
| excludes="misc/*, **/UnitTest*.java, |
| **/StressCategory.java, |
| **/doc-files/*, |
| ${stem}/xml/**, |
| ${stem}/test/serialization/**, |
| ${stem}/net/SMTPAppender.java, |
| ${stem}/net/JMS*.java, |
| ${stem}/jmx/*.java, |
| ${stem}/or/jms/*.java" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}" |
| debug="on"> |
| <classpath refid="compile.classpath"/> |
| </javac> |
| |
| <copy todir="${javac.dest}"> |
| <fileset dir="${java.source.dir}" includes="${stem}/lf5/**/*.properties"/> |
| <fileset dir="${java.source.dir}" includes="${stem}/lf5/viewer/images/*"/> |
| </copy> |
| |
| </target> |
| |
| <target name="build.examples" depends="build.core"> |
| <mkdir dir="${javac.dest}" /> |
| <javac srcdir="${basedir}" |
| destdir="${javac.dest}" |
| includes="examples/**/*.java" |
| excludes="misc/*" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}" |
| debug="on"> |
| <classpath> |
| <pathelement path="${classpath}"/> |
| <fileset file="${jaxp.jaxp.jar}"/> |
| </classpath> |
| </javac> |
| <rmic base="${javac.dest}" classname="examples.NumberCruncherServer"/> |
| |
| <copy todir="${javac.dest}"> |
| <fileset dir="." includes="examples/lf5/**/*.properties"/> |
| <fileset dir="." includes="examples/lf5/**/*.xml"/> |
| </copy> |
| |
| </target> |
| |
| <target name="build.xml" depends="init, jaxp" if="jaxp-present"> |
| <javac srcdir="${java.source.dir}" |
| destdir="${javac.dest}" |
| includes="${stem}/xml/**/*.java" |
| excludes="${stem}/xml/examples/doc-files/**.java, |
| ${stem}/xml/Transform.java" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}" |
| classpath="${classpath}"> |
| <classpath refid="compile.classpath"/> |
| </javac> |
| <copy file="${BSTEM}/xml/log4j.dtd" tofile="${javac.dest}/${stem}/xml/log4j.dtd" /> |
| </target> |
| |
| <target name="build.javamail" depends="init, javamail" |
| if="javamail-present"> |
| <javac srcdir="${java.source.dir}" |
| destdir="${javac.dest}" |
| includes="${stem}/net/SMTPAppender.java" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}"> |
| <classpath refid="compile.classpath"/> |
| </javac> |
| </target> |
| |
| <target name="build.jms" depends="init, jms, jndi" if="jms-present"> |
| <javac srcdir="${java.source.dir}" |
| destdir="${javac.dest}" |
| includes="${stem}/net/JMS*.java, ${stem}/or/jms/*.java" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}"> |
| <classpath refid="compile.classpath"/> |
| </javac> |
| </target> |
| |
| <target name="build.jmx" depends="init, jmx, jndi" if="jmx-present"> |
| <javac srcdir="${java.source.dir}" |
| destdir="${javac.dest}" |
| includes="${stem}/jmx/*.java" |
| excludes="${stem}/jmx/T.java" |
| target="${javac.target}" |
| source="${javac.source}" |
| includeAntRuntime="${javac.includeAntRuntime}" |
| includeJavaRuntime="${javac.includeJavaRuntime}" |
| fork="${javac.fork}" |
| deprecation="${deprecation}"> |
| <classpath refid="compile.classpath"/> |
| </javac> |
| </target> |
| |
| |
| <!-- ================================================================= --> |
| <!-- Remove all generated (compiled) class files. --> |
| <!-- ================================================================= --> |
| <target name="clean" depends="init"> |
| <delete dir="${dist.dir}/" /> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Runs checkstyle. Available from http://checkstyle.sf.net --> |
| <!-- ================================================================= --> |
| <target name="checkstyle" depends="init"> |
| <taskdef resource="checkstyletask.properties" |
| classpath="${checkstyle.jar}"/> |
| |
| <!-- by default checkstyle supports the Sun coding standard. --> |
| <checkstyle lcurlyMethod="nlow" |
| lcurlyOther="nlow" |
| lcurlyType="nlow" |
| maxMethodLen="500" |
| maxConstructorLen="500"> |
| <fileset dir="src/java/org/apache/log4j/chainsaw" includes="**/*.java"/> |
| </checkstyle> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Runs Chainsaw --> |
| <!-- ================================================================= --> |
| |
| <target name="chainsaw" depends="build"> |
| <!-- Need to fork to avoid problems --> |
| <java classname="org.apache.log4j.chainsaw.Main" fork="yes" |
| classpath="${javac.dest};${ant.home}/lib/crimson.jar"> |
| </java> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Remove the temporary manifest file, actual work is done in the --> |
| <!-- dependencies. --> |
| <!-- ================================================================= --> |
| <target name="jar" depends="log4j.jar"> |
| <delete file="${jar.dest}/manifest.mf"/> |
| </target> |
| |
| <target name="prejar" depends="build"> |
| <mkdir dir="${jar.dest}"/> |
| <filter token="version" value="${version}" /> |
| <copy file="${manifest.src}" tofile="${jar.dest}/manifest.mf" |
| filtering="true"/> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Create log4j.jar, excluding tests and other odds and ends. --> |
| <!-- ================================================================= --> |
| <target name="log4j.jar" depends="prejar"> |
| <delete> |
| <fileset dir="${jar.dest}"> |
| <include name="*.jar"/> |
| </fileset> |
| </delete> |
| |
| <jar jarfile="${jar.dest}/${jar.filename}" basedir="${javac.dest}" |
| includes="${stem}/*.class, |
| ${stem}/xml/log4j.dtd, |
| ${stem}/config/*.class, |
| ${stem}/helpers/*.class, |
| ${stem}/spi/*.class, |
| ${stem}/net/*.class, |
| ${stem}/jdbc/*.class, |
| ${stem}/varia/*.class, |
| ${stem}/chainsaw/*.class, |
| ${stem}/lf5/**/*.class, |
| ${stem}/lf5/**/*.properties, |
| ${stem}/lf5/**/*.gif, |
| ${stem}/nt/*.class, |
| ${stem}/xml/*.class, |
| ${stem}/jmx/*.class, |
| ${stem}/or/*.class, |
| ${stem}/or/sax/*.class, |
| ${stem}/or/jms/*.class, |
| ${stem}/config/*.class" |
| excludes="**/UnitTest**" |
| manifest="${jar.dest}/manifest.mf"/> |
| </target> |
| |
| |
| <!-- ================================================================= --> |
| <!-- This target builds the javadoc files. --> |
| <!-- ================================================================= --> |
| <target name="javadoc" depends="init" unless="env.NO_JAVADOC"> |
| |
| <mkdir dir="${javadoc.dest}" /> |
| |
| <javadoc sourcepath="${java.source.dir}" |
| destdir="${javadoc.dest}" |
| packagenames="org.apache.log4j, |
| org.apache.log4j.config, |
| org.apache.log4j.helpers, |
| org.apache.log4j.jmx, |
| org.apache.log4j.lf5, |
| org.apache.log4j.net, |
| org.apache.log4j.nt, |
| org.apache.log4j.or, |
| org.apache.log4j.jdbc, |
| org.apache.log4j.or.sax, |
| org.apache.log4j.or.jms, |
| org.apache.log4j.performance, |
| org.apache.log4j.spi, |
| org.apache.log4j.varia, |
| org.apache.log4j.chainsaw, |
| org.apache.log4j.xml, |
| org.apache.log4j.xml.examples" |
| version="true" |
| protected="true" |
| author="true" |
| use="true" |
| overview="${docs.dest}/overview.html" |
| doctitle="log4j version ${version}<br>API Specification" |
| windowtitle="Log4j Version ${version}" |
| header="<b>Log4j ${version}</b>" |
| bottom="Copyright 2000-2005 Apache Software Foundation."> |
| |
| <link href="http://java.sun.com/j2se/1.3/docs/api/"/> |
| <link href="http://java.sun.com/j2ee/sdk_1.3/techdocs/api/"/> |
| <classpath refid="compile.classpath"/> |
| </javadoc> |
| |
| <!-- Extra files referenced by JavaDocs --> |
| <copy file="${java.source.dir}/org/apache/log4j/xml/log4j.dtd" |
| tofile="${javadoc.dest}/org/apache/log4j/xml/log4j.dtd" /> |
| <copy todir="${javadoc.dest}/org/apache/log4j/xml/examples"> |
| <fileset dir="${java.source.dir}/org/apache/log4j/xml/examples"> |
| <include name="sample*.xml" /> |
| <include name="XMLSample.java" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Compare the current API with a previous release --> |
| <!-- ================================================================= --> |
| <target name="jdiff" description="Generate comparison to reference API"> |
| <property name="reference-api.version" value="1.2.9"/> |
| <property name="reference-api.dir" location="${user.home}/logging-log4j-${reference-api.version}"/> |
| <property name="reference-api.source.dir" location="${user.home}/logging-log4j-${reference-api.version}/src/java"/> |
| |
| <!-- Must be set to the root of where JDiff is installed. --> |
| <property name="JDIFF_HOME" value="${user.home}/jdiff"/> |
| <!-- Just one simple way to tell Ant about the JDiff task --> |
| <taskdef name="jdiff" classname="jdiff.JDiffAntTask" |
| classpath="${JDIFF_HOME}/lib/antjdiff.jar"/> |
| |
| <jdiff verbose="on" destdir="build/jdiff"> |
| <old name="Version ${reference-api.version}"> |
| <dirset dir="${reference-api.source.dir}" includes="org/**"/> |
| </old> |
| <new name="Version ${version}"> |
| <dirset dir="${java.source.dir}" includes="org/**" excludes="org/apache/log4j/test/**"/> |
| </new> |
| </jdiff> |
| </target> |
| |
| <!-- ============================================== --> |
| <!-- Build the site files using Anakia --> |
| <!-- ============================================== --> |
| <target name="prepareSite"> |
| <available classname="org.apache.velocity.anakia.AnakiaTask" |
| property="AnakiaTask.present"> |
| <classpath refid="site.classpath"/> |
| </available> |
| </target> |
| |
| <target name="checkSite" depends="prepareSite" unless="AnakiaTask.present"> |
| <echo> |
| AnakiaTask is not present! Please check to make sure that |
| velocity.jar is in your classpath. |
| </echo> |
| </target> |
| |
| <target name="clean-site"> |
| <delete> |
| <fileset dir="${docs.dest}" includes="**/*.html"> |
| <exclude name="FAQ.html"/> |
| <exclude name="TROUBLESHOOT.html"/> |
| <exclude name="manual.html"/> |
| <exclude name="overview.html"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="site" depends="checkSite" if="AnakiaTask.present"> |
| <taskdef name="anakia" classname="org.apache.velocity.anakia.AnakiaTask"> |
| <classpath refid="site.classpath"/> |
| </taskdef> |
| |
| <mkdir dir="${docs.dest}/css"/> |
| <copy file="${logging-site}/docs/css/site.css" tofile="${docs.dest}/css/site.css"/> |
| |
| <anakia basedir="${xdocs.src}" destdir="${docs.dest}/" |
| extension=".html" |
| style="site.vsl" |
| projectFile="stylesheets/project.xml" |
| excludes="**/stylesheets/**, empty.xml" |
| includes="**/*.xml" |
| lastModifiedCheck="true" |
| templatePath="${logging-site}/src/xdocs/stylesheets"> |
| </anakia> |
| |
| </target> |
| |
| <!-- ================================================================= --> |
| <!-- Build a complete distribution. Results go to ${dist.images} --> |
| <!-- ================================================================= --> |
| <target name="dist" depends="init, clean, javadoc, jar, site"> |
| |
| <delete verbose="true"> |
| <fileset dir="."> |
| <patternset> |
| <include name="**/*.bak"/> |
| <include name="${dist.dir}/velocity.log"/> |
| <include name="${BSTEM}/**/temp*"/> |
| <include name="${BSTEM}/performance/test"/> |
| <include name="${BSTEM}/test/current.*"/> |
| <include name="${BSTEM}/test/current.*"/> |
| <include name="${BSTEM}/examples/test"/> |
| <include name="${BSTEM}/test/logging.*"/> |
| <include name="${BSTEM}/test/log4j.properties"/> |
| <include name="{$BSTEM}/test/socket.lcf"/> |
| <include name="${BSTEM}/test/file"/> |
| <include name="${BSTEM}/test/output.*"/> |
| <include name="${BSTEM}/nt/EventLogCategories.dbg"/> |
| <include name="${BSTEM}/nt/*.h"/> |
| <include name="${BSTEM}/nt/*.obj"/> |
| <include name="${BSTEM}/nt/*.idb"/> |
| <include name="${BSTEM}/nt/EventLogCategories.rc"/> |
| <include name="${BSTEM}/nt/EventLogCategories.RES"/> |
| <include name="${BSTEM}/nt/EventLogCategories.res"/> |
| <include name="${BSTEM}/nt/MSG00001.bin"/> |
| <include name="${BSTEM}/nt/NTEventLogAppender.lib"/> |
| <include name="${BSTEM}/nt/NTEventLogAppender.exp"/> |
| <include name="${BSTEM}/nt/vc50.idb"/> |
| <include name="${BSTEM}/net/test/loop.log"/> |
| <include name="${BSTEM}/net/test/loop.log.1"/> |
| <include name="${jar.dest}/manifest.mf"/> |
| <include name="${javac.dest}/*.class"/> |
| </patternset> |
| </fileset> |
| </delete> |
| |
| <mkdir dir="${dist.images}" /> |
| |
| <mkdir dir="${dist.tmp}/logging-log4j-${version}" /> |
| |
| <copy todir="${dist.tmp}/logging-log4j-${version}"> |
| <fileset dir="${base}" |
| includes="src/java/**, |
| docs/**, |
| examples/**, |
| build/*, |
| build.xml, |
| build.properties.sample, |
| manifest.mf, |
| INSTALL, |
| LICENSE.txt, |
| ${dist.dir}/lib/log4j*.jar, |
| ${dist.dir}/classes/**, |
| contribs/**" |
| excludes="make/make.loc, |
| **/*.bak, **/goEnv.bat, |
| **/Makefile, **/goEnv.bat, |
| docs/pub-support/*, |
| ${dist.dir}/classes/org/**, |
| src/java/org/apache/log4j/test/**/*, |
| **/.#*"/> |
| </copy> |
| |
| |
| <fixcrlf srcdir="${dist.tmp}/logging-log4j-${version}" |
| includes="build.sh" cr="remove"/> |
| <fixcrlf srcdir="${dist.tmp}/logging-log4j-${version}" |
| includes="build.bat" cr="add"/> |
| <chmod dir="${dist.tmp}/logging-log4j-${version}" |
| includes="build.sh" perm="+x"/> |
| |
| <tar tarfile="${dist.images}/logging-log4j-${version}.tar" |
| basedir="${dist.tmp}" |
| includes="logging-log4j-${version}/**" /> |
| |
| <gzip src="${dist.images}/logging-log4j-${version}.tar" |
| zipfile="${dist.images}/logging-log4j-${version}.tar.gz" /> |
| |
| <zip zipfile="${dist.images}/logging-log4j-${version}.zip" |
| basedir="${dist.tmp}" |
| includes="logging-log4j-${version}/**" /> |
| |
| |
| <delete dir="${dist.tmp}" /> |
| </target> |
| |
| |
| <!-- ================================================================= --> |
| <!-- Build a complete distribution for release. --> |
| <!-- ================================================================= --> |
| <target name="release"> |
| <property name="javac.includeAntRuntime" value="false"/> |
| <property name="javac.includeJavaRuntime" value="false"/> |
| <property name="javac.fork" value="true"/> |
| <property name="build.compiler" value="classic"/> |
| <antcall target="clean-site"/> |
| <antcall target="dist"/> |
| |
| <!-- check that jar file is not missing |
| classes due to missing dependencies --> |
| <available property="jaxp-found" |
| classname="org.apache.log4j.xml.DOMConfigurator" |
| classpath="${jar.dest}/${jar.filename}"/> |
| <fail unless="jaxp-found" message="JAXP was not found."/> |
| <available property="jmx-found" |
| classname="org.apache.log4j.jmx.Agent" |
| classpath="${jar.dest}/${jar.filename}"/> |
| <fail unless="jmx-found" message="JMX was not found."/> |
| <available property="jms-found" |
| classname="org.apache.log4j.net.JMSAppender" |
| classpath="${jar.dest}/${jar.filename}"/> |
| <fail unless="jms-found" message="JMS or JNDI was not found."/> |
| <available property="javamail-found" |
| classname="org.apache.log4j.net.SMTPAppender" |
| classpath="${jar.dest}/${jar.filename}"/> |
| <fail unless="javamail-found" message="JAVAMAIL was not found."/> |
| |
| </target> |
| </project> |
| |