Путь к классам в Ant для задачи Javac

У меня есть следующий файл ANT для сборки. Но, к сожалению

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

    <property name="target.dir" value="C:tomwebapp"/>
    <property name="basesrc.dir" value="c:SimpleChat"/>   
    <property name="classes.target" value="${basesrc.dir}WebContentWEB-INFclasses"/>
    <property name="src.dir" value="${basesrc.dir}src"/>
    <property name="classpath" value="${basesrc.dir}WebContentWEB-INFclasses"/>

    <!-- 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-INFlib"/>
        <mkdir dir="${target.dir}WEB-INFclasses"/>
    </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>

У меня есть соответствующие файлы jar в каталоге LIB, указанном в элементе path. и все же это дает ошибку компиляции, что пакет не существует, поскольку он не может видеть мой файл JAR.

можете ли вы указать на ошибку, которую я делаю, чтобы правильно включить эту банку?

2 ответов


трудно сказать. Я не вижу очевидных ошибок.

все примеры здесь:http://ant.apache.org/manual/Types/fileset.html Использование:

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

вместо того, чтобы просто "*.jar " как у вас есть, но то, что у вас есть, похоже, должно быть в порядке, пока .файлы jar находятся непосредственно внутри классов \WebContent\WEB-INF\.


эта строка должна указывать на то, где находятся ваши банки

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

наверное

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