我已经为 netbeans 项目编写了一个build.xml(更新时间 8:49 PM)。而且我发现serlvet-api.jar
目录中的tomcat库等C:\apache-tomcat-7.0.35\lib
。但我不确定我是如何将target="class_compile"
使用连接fieldset dir
到 tomcat 目录的(每次我希望从另一台计算机编译时不更改 build.xml)。
我在 ant script 中包含外部 JAR 时阅读了问题错误,解决方案是元素中缺少classpathref
属性javac
(尽管我的classpathref
属性似乎是正确的)。
<path id="build.classpath">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>
</path>
<target name="class_compile" depends="prepare" description="Compile the whole project">
<javac destdir="${build.classes}"
debug="${debug}"
deprecation="on"
optimize="off"
srcdir="${src.dir}"
classpathref="build.classpath"
includes="*/**"
/>
<copy todir="${build.classes}">
<fileset dir="${src.dir}" includes="**/*.properties"/>
</copy>
</target>
<target name="prepare">
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.classes}"/>
<path id="run.classpath" >
<pathelement location="${build.classes}" />
</path>
<mkdir dir="${build.lib}"/>
<mkdir dir="${qa.dir}"/>
</target>
目前,一旦class_compile
执行目标,就会报告有关丢失类文件的多个错误。
emma:
Created dir: C:\capstonegroup3\TTTserver\build\emma-instr
Created dir: C:\capstonegroup3\TTTserver\build\emma-reports
prepare:
Created dir: C:\capstonegroup3\TTTserver\build\classes
Created dir: C:\capstonegroup3\TTTserver\build\lib
Created dir: C:\capstonegroup3\TTTserver\build\qa-reports
class_compile:
C:\capstonegroup3\TTTserver\build.xml:152: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
Compiling 21 source files to C:\capstonegroup3\TTTserver\build\classes
C:\capstonegroup3\TTTserver\src\java\AuthServer\AuthenticationInterface.java:8: error: package javax.servlet.http does not exist
import javax.servlet.http.HttpServletRequest;
有没有办法从 persay文件property
中设置目录?我在我的(由netbeans 生成,在目标期间包含一个属性文件)中看到了。tomcat apache/lib
.property
build_impl.xml
-init-private
<target depends="-pre-init" name="-init-private">
<property file="nbproject/private/private.properties"/>
</target>
但我不确定如何为我的build.xml
. 但基本上我正在寻找一个生成apache-tomcat\lib
目录的相对路径并成功编译类文件而不会丢失包的解决方案。