从Eclipse运行Ant脚本后缺少输出文件



我在Eclipse Luna中开发了一个简单的web应用程序。应用程序的目录结构如下:

项目名称为SchoolSchedule。

在项目名称下,有Java资源、build、WebContent文件夹和build.xml文件。

在Java资源下,它是"src"文件夹,我的Java代码包名称在"src"文件夹下。

在WebContent下,有META-INF, WEB-INF和我的jsp文件在WEB-INF目录下,有web.xml文件和lib目录。

build.xml位于项目根目录。此web应用程序成功运行并产生预期的结果。

我创建了一个Ant脚本来编译、构建WAR文件并部署WAR。但是,即使是最基本的任务也不起作用。我右键单击build.xml -> run as…-->蚂蚁构建。在控制台中,我可以看到所有的回显消息,没有错误。但是,我没有看到创建了任何新目录(我"刷新"了项目)。没有从Java代码编译的"类"文件,更不用说构建和部署这些任务了。

有件事我没做对。请帮助。下面是我的Ant脚本:

<?xml version="1.0" encoding="UTF-8"?>
<project name="AntWarWebApp" basedir="." >
<echo>Define properties</echo> 
<property name="name" value="SchoolSchedule"/>
<property name="src" location="src"/>
<property name="web" location="WebContent"/>
<property name="build" location="build"/>
<property name="classDir" location="${build}/src"/>
<property name="distDir" location="${build}/dist"/>
<property name="warDir" location="${build}/war"/>
<property name="tomcat.webapps" value="C:apache-tomcat-7.0.70webapps" />
<echo>time stamp</echo> 
<tstamp prefix="build-info">
    <format property="current-date" pattern="d-MMMM-yyyy" locale="en" />
    <format property="current-time" pattern="hh:mm:ss a z" locale="en" />
    <format property="year-month-day" pattern="yyyy-MM-dd" locale="en" />
</tstamp>
<echo>clean up previous build directories</echo>    
<target name="clean" description="Delete old build directories">
    <delete dir="${distDir}"/>
    <delete dir="${warDir}"/>
    <delete dir="${classDir}"/>
</target>
<echo>create directories</echo>
<target name="init" depends="clean">
    <mkdir dir="${build}"/>
    <mkdir dir="${classDir}"/>
    <mkdir dir="${warDir}"/>
    <mkdir dir="${distDir}"/>
    <mkdir dir="${warDir}/WEB-INF"/>
    <mkdir dir="${warDir}/WEB-INF/classes"/>
</target>
<echo>start compiling</echo>        
<target name="compile" depends="clean, init" description="Compile main 
      source tree java files">
 <javac srcdir="${src}" destdir="${classDir}" />
    <classpath>
        <fileset dir="${basedir}/WebContent/WEB-INF/lib">
              <include name="*" />
        </fileset>
    </classpath>        
</target>
<echo>start building WAR file</echo>    
<target name="buildwar" depends="clean, init, compile">
    <war basedir="${wardir}" destfile="${distDir}/${name}.war"
     webxml="${wardir}/WEB-INF/web.xml">
        <webinf dir="${wardir}/WEB-INF/">
            <include name="**/*.jar" />
        </webinf>
        <manifest>
            <attribute name="Built-On" value="${build-info.current-date}" />
            <attribute name="Built-At" value="${build-info.current-time}" />
        </manifest>
    </war>
</target>
    <echo>end building WAR file</echo>   
<target name="deploy" depends="init, compile, buildwar" description="Deploy application">
   <delete dir="${tomcat.webapps}/*.war" />  
    <echo>copy WAR file to Tomcat deploy directory</echo>
    <copy file="${distdir}/*.war" todir="${tomcat.webapps}" />
</target>
</project>

你不应该有某种顶级元素

<project>
 ....
</project>

围绕着这一切?

相关内容

  • 没有找到相关文章

最新更新