使用Ant项目打包

一、前沿

  前段时间公司为了做一个新闻发布系统,就使用了开源的JEECMS系统,(非人类啊,泪~~~),项目不是maven构建的,项目的打包部署非常的麻烦,没办法只能使用Ant,Ant是比较古老的打包部署工具,目前大部分都是使用maven来打包部署。

  so,为大家介绍下Ant文件的编写。我就不多说了,直接把我的ant文件展示给大家,各位有什么不懂的地方,欢迎评论,我会挨个回复。谢谢~~~

二、Ant文件。build.xml

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?xml version="1.0" encoding="UTF-8"?>
 
<!-- 定义一个工程,默认任务为warFile。 -->
<project name="JRZNCMS" default="warFile" basedir=".">
     
    <!-- 定义属性,打成war包的名称。 -->
    <property name="warFileName" value="ROOT.war"></property>
     
    <!-- 定义路径,编译java文件时用到的jar包。 加载lib下的所有jar包-->
    <path id="project.lib">
        <fileset dir="${basedir}/WebContent/WEB-INF/lib">
            <include name="*.jar"/>
        </fileset>
    </path>
     
    <!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->
    <target name="clean" description="清理目录~~~~">
        <delete dir="${basedir}/WebContent/WEB-INF/classes" />
        <mkdir dir="${basedir}/WebContent/WEB-INF/classes" />
    </target>
     
    <!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->
    <target name="compile" depends="clean"  description="编译~~~~" >
        <javac srcdir="${basedir}/src" destdir="${basedir}/WebContent/WEB-INF/classes" includeantruntime="false" encoding="UTF-8">
            <classpath refid="project.lib">
            </classpath>
        </javac><br>      <!--由于compile只能编译java文件,so需要我们将src下的其他文件copy到classes下-->
        <!-- 定义任务,将xml 和 配置文件 copy到src下。 -->
        <copy todir="${basedir}/WebContent/WEB-INF/classes" >
            <fileset dir="${basedir}/src">
                <include name="**/*.xml"/>
                <include name="**/*.properties"/>
            </fileset>
        </copy>
         
    </target>
     
    <!-- 定义默认任务,将class文件集合成jar包。 -->
    <target name="warFile" depends="compile">
        <!-- 删除原有war包。 -->
        <delete dir="${basedir}/${warFileName}" />
        <!-- 建立新war包。 -->
        <war destfile="${basedir}/${warFileName}" webxml="${basedir}/WebContent/WEB-INF/web.xml">
            <!-- 将WebContent下的所有文件copy到war包的对应路径下。 -->
            <fileset dir="${basedir}/WebContent">
                <include name="**/**.*" />
                <include name="*.*" />
            </fileset>
        </war>
    </target>
     
</project>

  

posted @   Code猿猿  阅读(1377)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示