繁体   English   中英

将类路径添加到build.xml的最佳方法

[英]Best way to add classpath to build.xml

我在build.xml中有这个target来编译一个类:

<target name="-do-compile" depends="init, deps-jar, -pre-pre-compile, -pre-compile, -copy-manifest, -copy-persistence-xml, -copy-webdir, library-inclusion-in-archive,library-inclusion-in-manifest" if="have.sources">
    <webproject2:javac destdir="${build.classes.dir.real}"/>
        <copy todir="${build.classes.dir.real}">
            <fileset dir="${src.dir}" excludes="${build.classes.excludes}"/>
        </copy>
</target>

还有这个:

<target name="-init-macrodef-javac">
        <macrodef name="javac" uri="http://www.netbeans.org/ns/web-project/2">
            <attribute name="srcdir" default="${src.dir}"/>
            <attribute name="destdir" default="${build.classes.dir.real}"/>
            <attribute name="classpath" default="${javac.classpath}:${j2ee.platform.classpath}"/>
            <attribute name="debug" default="${javac.debug}"/>
            <element name="customize" optional="true"/>
            <sequential>
                <javac srcdir="@{srcdir}" destdir="@{destdir}" debug="@{debug}" deprecation="${javac.deprecation}" source="${javac.source}" target="${javac.target}" includeantruntime="false">
                    <classpath>
                        <path path="@{classpath}"/>
                    </classpath>
                    <compilerarg line="${javac.compilerargs}"/>
                    <customize/>
                </javac>
            </sequential>
        </macrodef>
    </target>

编译期间,出现错误“ javax.servlet不存在”。 因此,我必须在/opt/java/common/中将classpath添加到servlet-api.jar。 在我的build.xml中执行此操作的最佳方法是什么,应修改什么?

由于问题看起来很傻,因此人们可能会投票否决而不是回答。 但这当然无济于事,这就是他们的目的。

将以下行添加到您的classpath元素中

<pathelement location="/opt/java/common/servlet-api.jar"/>

即在您的构建xml文件中

<javac srcdir="@{srcdir}" destdir="@{destdir}" debug="@{debug}" deprecation="${javac.deprecation}"   
                        source="${javac.source}" target="${javac.target}" includeantruntime="false">
      <classpath>
          <path path="@{classpath}"/>
          <pathelement location="/opt/java/common/servlet-api.jar"/>
      </classpath>
      <compilerarg line="${javac.compilerargs}"/>
      <customize/>
</javac>

请参阅http://ant.apache.org/manual/using.html类路径结构部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM