ANT“复制”任务不执行。文件不会被复制

时间:2016-09-14 11:50:23

标签: ant

我正在编写我的第一个ANT脚本来为我创建的Web应用程序构建WAR文件。 Web应用程序在Tomcat上运行良好。

我的网络应用程序的文件结构是:

  • src
  • 构建
  • WebContent
  • --- + META-INF
  • --- + WEB-INF
  • --- + --- + lib
  • --- + --- + web.xml
  • --- + JSP
  • 的build.xml

我的ANT脚本能够创建一些目录。并且“javac”有效。我可以在root / build / classes文件夹下看到编译的Java类。

我在构建WAR之前尝试使用“copy”进行一些打包(我已经阅读了之前发布过的相关主题,并尝试按照示例进行操作)。但是,我的“复制”任务不起作用。我没有看到文件被复制到“build / war”目录中;因此,“战争”任务没有做任何事情。但是,控制台上没有错误消息。在这里,我发布了我的ANT脚本,并希望得到更多的帮助。非常感谢你。

<echo>Define properties</echo> 
<property name="name" value="SchoolSchedule"/>
<property name="src" location="${basedir}/src"/>
<property name="web" location="${basedir}/WebContent"/>
<property name="build" location="${basedir}/build"/>
<property name="disDir" location="${build}/dis"/> 
<property name="warDir" location="${build}/war"/>

<property name="tomcat.webapps" value="C:\apache-tomcat-7.0.70\webapps" />

<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="${disDir}"/> 
    <delete dir="${warDir}"/>
</target>

<echo>create directories</echo>
<target name="init" depends="clean">
    <mkdir dir="${disDir}"/>  
    <mkdir dir="${warDir}"/>
    <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="${build}/classes" debug="on" />
    <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">

    <!-- Packaging -->
    <copy todir="${warDir}/WEB-INF/classes">
        <fileset dir="${build}/classes" />  
    </copy>
    <copy todir="${warDir}/WEB-INF">
        <fileset dir="${web}/WEB-INF" includes="web.xml" />      
    </copy>
    <copy todir="${warDir}">
        <fileset dir="${web}" includes="**/*.*" /> 
    </copy>
    <jar destfile="${disDir}/${name}.war" basedir="${warDir}" />                        

</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="${disDir}/*.war" todir="${tomcat.webapps}" />
</target>

0 个答案:

没有答案