日期:2014-05-19  浏览次数:20670 次

~~~~~~请问大家,还有人用~~~~ANT~~~给JAVA工程或WEB工程打包的吗?~~~~~~
~~~~~~请问大家,还有人用~~~~ANT~~~给JAVA工程或WEB工程打包的吗?~~~~~~

在好几年前,我常见有前辈用ant打包。
但是现在越来越少有人用ant了。 

想请教一下,ant的详细配置,以及ant的优势和缺点。 请高手指教!

本人CSDN博客 http://blog.csdn.net/yjflinchong

------解决方案--------------------
同问....mark一下.
------解决方案--------------------
我们公司就是用ant,生成struts hibernate和webservice的配置文件和包。不过脚本不是我写的,我也没看。
------解决方案--------------------
搂主 若问的太详细不如google 若有个别疑问 可以提出来 

我公司的项目就是用ant打包
------解决方案--------------------
网上有ant教程的,我用过它来打包web项目(编译、打包、部署、发布。。。。)对工程制动化发布。
------解决方案--------------------
ant教程,网上应该有很多的
------解决方案--------------------
这是我们项目的build.xml,我只知道双击它就可以自动运行,但是具体脚本的意思我没看过。。不好意思太长了,我只能截一部分。。

XML code


    <!-- import properties (app settings, classpath, jar file locations) -->
    <import file="properties.xml"/>

    <target name="init" description="defines custom tasks">
        <!-- Taskdefs -->
        <taskdef resource="net/sf/antcontrib/antcontrib.properties" classpath="${ant-contrib.jar}"/>
        
        <!-- Ensure that Ant 1.6.2+ is being used -->
        <available classname="org.apache.tools.ant.DynamicAttribute" property="ant-1.6.2"/>
        <fail unless="ant-1.6.2" message="AppFuse requires Ant 1.6.2 for faster unit testing"/>
         
        <!-- Conditionally set property for tomcat -->
        <condition property="server.use.tomcat">
            <equals arg1="${server.type}" arg2="tomcat"/>
        </condition>
        
        <condition property="server.use.jboss">
            <equals arg1="${server.type}" arg2="jboss"/>
        </condition>

    </target>
    
    <!-- Check timestamp on files -->
    <target name="prepare" depends="init" description="create target directories">
        <tstamp/>
        <tstamp><format property="copyright.year" pattern="yyyy"/></tstamp>
        <echo message="Preparing target directory '${webapp.target}'"/>
        <mkdir dir="${webapp.target}"/>
        <mkdir dir="${webapp.dist}"/>
        <mkdir dir="${web.classes.dir}"/>
        
        <mkdir dir="${build.dir}/resources"/>
        <mkdir dir="${build.dir}/dao/gen"/>
        <mkdir dir="${build.dir}/web/gen"/>

        <!-- Make sure hibernatedoclet is necessary -->
        <uptodate property="hibernatedoclet.unnecessary">
            <srcfiles dir="src/dao" includes="**/*.java"/>
            <srcfiles dir="${build.dir}/dao/gen" includes="**/*.java"/>
            <mapper type="glob" from="*.java" to="${build.dir}/dao/classes/*.class"/>
        </uptodate>

        <!-- Make sure webdoclet is necessary -->
        <uptodate property="webdoclet.uptodate">
            <srcfiles dir="src/web" includes="**/*.java"/>
            <srcfiles dir="${build.dir}/web/gen" includes="**/*.java"/>
            <mapper type="glob" from="*.java" to="${build.dir}/web/classes/*.class"/>
        </uptodate>

        <condition property="webdoclet.unnecessary">
            <and>
                <equals arg1="${webdoclet.uptodate}" arg2="true"/>