I have an Apache Ant build file with a <javac>
command that requires four specific JARs to be on the build classpath
. I've tried to do this:
<project basedir=".." default="build_to_jar" name="Transnet Spectrum Analyzer"> <property environment="env"/> <property name="src" value="src"/> <property name="libsrc" value="library_sources" /> <property name="build" value="build"/> <property name="dist" value="dist"/> <property name="target" value="1.5"/> <property name="libraries" value="./libraries"/> <fileset dir="." id="TSA.classpath"> <include name="${libraries}/rxtx/RXTXcomm.jar" /> <include name="${libraries}/commons-logging-1.1.1.jar" /> <include name="${libsrc}/JCommon/jcommon-1.0.15.jar" /> <include name="${libsrc}/JFreeChart/jfreechart-1.0.12.jar" /> </fileset> <target name="compile" depends="clean,init" description="compile the source " > <echo>Compile from ${src} to ${build}</echo> <javac destdir="${build}" source="${target}" target="${target}"> <compilerarg value="-Xlint:unchecked"/> <src path="${src}"/> <classpath path="TSA.classpath" /> </javac> </target> <!-- blah blah blah --> </project>
…but none of the files specified in TSA.classpath
appear to show up. How do I include these files in my classpath?
Ant - Classpaththe location attribute refer to a single file or directory relative to the project's base directory (or an absolute filename) the path attribute accepts colon- or semicolon-separated lists of locations.
includeAntRuntime. Whether to include the Ant run-time libraries in the classpath. It is usually best to set this to false so the script's behavior is not sensitive to the environment in which it is run. No; defaults to yes , unless build.sysclasspath property is set.
Here's an example from a project I am currently working on. I suspect you can modify it to work for your situation.
<path id="master-classpath"> <fileset dir="${web.dir}/WEB-INF/lib"> <include name="*.jar"/> </fileset> <fileset dir="${appserver.lib}"> <include name="servlet*.jar"/> </fileset> <pathelement path="${build.dir}"/> </path> ... <javac destdir="${build.dir}"> <src path="${src.dir}"/> <classpath refid="master-classpath"/> </javac>
Try
<javac ... classpathref="TSA.classpath">
or
<javac ...> ... <classpath refid="TSA.classpath" /> </javac>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With