Question

I have following ant file to build. But unfortunately

<project default="build.deploy.start" basedir=".">

    <property name="target.dir" value="C:\tom\webapp\"/>
    <property name="basesrc.dir" value="c:\SimpleChat\"/>   
    <property name="classes.target" value="${basesrc.dir}\WebContent\WEB-INF\classes"/>
    <property name="src.dir" value="${basesrc.dir}\src"/>
    <property name="classpath" value="${basesrc.dir}\WebContent\WEB-INF\classes"/>

    <!-- Classpath for the project -->  
    <path id="master-classpath">
      <fileset dir="${classpath}">
        <include name="*.jar"/>
      </fileset>
    </path>

    <!-- init method which will ensure that all directories exists before we start building/deploying-->
    <target name="init">
        <mkdir dir="${target.dir}\js"/>
        <mkdir dir="${target.dir}\images"/>
        <mkdir dir="${target.dir}\pages"/>
        <mkdir dir="${target.dir}\WEB-INF\lib"/>
        <mkdir dir="${target.dir}\WEB-INF\classes"/>
    </target>

    <!--To build an application so that files can be deloyed-->
    <target name="build" depends="init">
        <javac srcdir="${src.dir}" destdir="${classes.target}">
            <classpath refid="master-classpath"/>
        </javac>
    </target>
</project>

I have respective jar files in the LIB directory specified in path element. and yet it gives compilation error that package does not exists as it cannot see my JAR file.

Can you please point out the mistake that I am doing to include that jar correctly?

Was it helpful?

Solution

Hard to tell. I can't see any obvious mistakes.

All the examples here: http://ant.apache.org/manual/Types/fileset.html use:

<include name="**/*.jar"/>

instead of just "*.jar" as you have, but what you have looks like it should be ok so long as the .jar files are directly inside \WebContent\WEB-INF\classes.

OTHER TIPS

This line should point to where your jars are

<property name="classpath" value="${basesrc.dir}\WebContent\WEB-INF\classes"/>

Probably

<property name="classpath" value="${basesrc.dir}\WebContent\WEB-INF\lib"/>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top