`
aben6448
  • 浏览: 25399 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

配合ant开发web项目

阅读更多
引用地址:http://www.easydone.cn/014/200604110005145285.htm

配合ant开发web项目
应用相关说明:
1、ant版本:apache-ant-1.6.1
2、eclipse版本:eclipse-SDK-3.0.1-win32
3、j2sdk1.4.2_08
4、jakarta-tomcat-5.0.19
5、mysql
目录结构如下:

ant具体配置如下
1、"Easydone"project"demo"bin目录下新建build.xml
内容如下:
<?xml version="1.0"  encoding="GB2312" ?>
<project name="Demo-Home" basedir="." default="usage">

 <property name="app.name" ="demo"/>
 <property name="app.dir" location="../WebRoot"/>
 <property name="webserver.home" location="../../../platform/jakarta-tomcat-5.0.19"/>
 <property name="webserver.deploy" location="${webserver.home}/webapps/"/>
 <property name="src.dir" location="../src"/>
 <property name="build.dir" location="${app.dir}/WEB-INF/classes"/>
 <property name="lib.dir" location="${app.dir}/WEB-INF/lib"/>
 <property name="dist.dir" location="../dist"/>
 <property name="properties.dir" location="${src.dir}/com/easydone/struts/ApplicationResources.properties"/>
 <property name="properties_zh.dir" location="${build.dir}/com/easydone/struts/ApplicationResources_zh.properties"/>
 <property name="doc.dir" ="../api"/>
 <property name="packages" ="com.easydone.*"/>
 
 <echo>+--------------------------------------------------+</echo>
 <echo>|                                                  |</echo>
 <echo>|       R U N N I N G   A N T    REPOSITORY        |</echo>
 <echo>|                                                  |</echo>
 <echo>+--------------------------------------------------+</echo>
 <!---Help Information-->
 <target name="usage" >
     <echo message=""/>
     <echo message="-------------------------------------------------------------"/>
     <echo message="操作说明:"/>
     <echo message="首先将您编写的java文件拷贝至${src.dir}目录下,按先后顺序执行以下命令既可。"/>
     <echo message="第一步:compile 命令编译*.java"/>
     <echo message="第二步:deploy 命令生成${app.name}.jar文件"/>
     <echo message="第三步:doc 命令生成详细javadoc文档"/>
     <echo message="每一步操作都能看到 BUILD SUCCESSFUL提示后,表示您操作成功!"/>
     <echo message="-------------------------------------------------------------"/>
     <echo message=""/>
 </target>  
  <!-- =================================================================== -->
  <!-- 设置应用环境变量                           -->
  <!-- =================================================================== --> 
 <path id="compile.classpath">
  <pathelement path ="${build.dir}"/>
  <fileset dir="${lib.dir}">
   <include name="**/*.jar"/>
  </fileset>
 </path>
  <!-- =================================================================== -->
  <!-- 格式化中文资源包,解决国际化中文问题                     -->
  <!-- =================================================================== --> 
    <target name="checkToZh">
         <uptodate property="toZh.notRequired"
            srcfile="${properties.dir}"
            targetfile="${properties_zh.dir}"/>
    </target>
    <target name="toZh" depends="checkToZh" unless="toZh.notRequired">
        <delete file="${properties_zh.dir}"/>
        <!-- native2ascii struts.properties -->
        <exec executable="native2ascii">
          <arg line=" ${properties.dir}  ${properties_zh.dir}"/>
        </exec> 
        <echo message="toZh performed!"/>
    </target>
  <!-- =================================================================== -->
  <!-- 初始化创建相关应用目录                             -->
  <!-- =================================================================== -->
    <target name="prepare" deion="create build,dist files">
     <mkdir dir="${build.dir}"/>
     <mkdir dir="${dist.dir}"/>    
    </target>
  <!-- =================================================================== -->
  <!-- 初始化应用程序,删除相关目录                           -->
  <!-- =================================================================== --> 
 <target name="clean" deion="Delete build files">
  <delete dir="${build.dir}"/>
  <delete dir="${dist.dir}"/>
 </target>
 
  <!-- =================================================================== -->
  <!-- compile 命令,执行javac编译命令                          -->
  <!-- =================================================================== --> 
 <target name="compile" depends="prepare">
  <javac srcdir="${src.dir}" destdir="${build.dir}" debug="on">
   <classpath refid="compile.classpath"/>
  </javac>
 </target>
  <!-- =================================================================== -->
  <!-- update命令,编译及处理国际化中文资源文件                        -->
  <!-- =================================================================== -->
 <target name="update" depends="compile,toZh">
  <!--copy classes-->
  <copy todir="${webserver.deploy}/${app.name}/WEB-INF/classes" includeEmptyDirs="no">
   <fileset dir="${build.dir}"/>
  </copy>
  <!--copy pages-->
  <copy todir="${webserver.deploy}/${app.name}" includeEmptyDirs="no">
   <fileset dir="${app.dir}"/>
  </copy>
  <!-- copy libs-->
  <copy todir="${webserver.deploy}/${app.name}/WEB-INF/lib" includeEmptyDirs="no">
   <fileset dir="${lib.dir}"/>
  </copy>
 </target>
  <!-- =================================================================== -->
  <!-- 部署应用程序,依赖于 compile命令clean,prepare,compile,dist          -->
  <!-- =================================================================== -->
 <target name="deploy" depends="clean,prepare,compile,toZh,dist">
  <delete dir="${webserver.deploy}/${app.name}.war"/>
  <delete dir="${webserver.deploy}/${app.name}"/>  
  <copy todir="${webserver.deploy}" includeEmptyDirs="no">
   <fileset dir="${dist.dir}"/>
  </copy>
 </target> 
  <!-- =================================================================== -->
  <!-- 部署应用程序,将其打为mshome.war包,依赖于 compile命令              -->
  <!-- =================================================================== --> 
 <target name="dist" depends="compile">
   <echo>building war...</echo>
   <war warfile="${dist.dir}/${app.name}.war"
       webxml="${app.dir}/WEB-INF/web.xml">
     <fileset dir="${app.dir}"/>
     <classes dir="${build.dir}"/>
     <classes dir="${lib.dir}">
      <include name="*.propertries"/>
   </classes>
   <lib dir="${lib.dir}">
    <include name="*.jar"/>
   </lib>
  </war>
 </target> 
  <!-- =================================================================== -->
  <!-- 生成说明文档(api)                                                   -->
  <!-- =================================================================== -->
 <target name="javadoc" depends="usage,compile">
    <delete dir="${doc.dir}"/>
    <mkdir dir="${doc.dir}"/>
     <javadoc packagenames="${packages}"
              sourcepath="${src.dir}"
              destdir="${doc.dir}"
              author="true"
              version="true"
              use="true"
              splitindex="true"
              windowtitle="${app.name} API"
              doctitle="${app.name}">
       <classpath refid="compile.classpath"/>
     </javadoc>
  </target>
  <!-- =================================================================== -->
  <!-- 执行一个数据库操作,其中demo为您的数据库名,可测试相关jdbc连接
      查询语句为bin目录下的db.sql                                -->
  <!-- =================================================================== -->  
 <target name = "mysqlInit">
 <echo>ANT 操作数据库开始.....</echo>
 <sql
  driver = "org.gjt.mm.mysql.Driver"
  url = "jdbc:mysql://localhost:3306/demo"
  userid = "root"
  password = "*******"
  src = "db.sql"
  print="yes"
  ="continue"
 />
 </target>
 <!--END-->
</project>

2、在"Easydone"project"demo"bin目录下新建setEnv.bat
dos处理脚本,主要为设置环境变量(这样做您无需手工配置环境变量,将整个工程移动到任何目录都可以使用),内容如下:

set ANT_HOME=../../../platform/apache-ant-1.6.1
set JAVA_HOME=../../../platform/j2sdk1.4.2_08
set CLASSPATH=%JAVA_HOME%/lib/toos.jar;%JAVA_HOME%/lib/dt.jar
set CATALINA_HOME=../../../platform/jakarta-tomcat-5.0.19
set PATH=%ANT_HOME%/bin;%CATALINA_HOME%/BIN;%JAVA_HOME%/bin;%CATALINA_HOME%/BIN
3、服务控制脚本:
tomcat启动服务:
在"Easydone"project"demo"bin目录下新建 run.cmd:

call setEnv.bat
startup

tomcat停止服务:
在"Easydone"project"demo"bin目录下新建 down.cmd

call setEnv.bat
shutdown

更新脚本:
在"Easydone"project"demo"bin目录下新建 update.cmd
call setEnv.bat
ant -buildfile build.xml  update

部署脚本:
在"Easydone"project"demo"bin目录下新建 deploy.cmd
call setEnv.bat
ant -buildfile build.xml  deploy

java doc 脚本:
在"Easydone"project"demo"bin目录下新建 doc.cmd
call setEnv.bat
ant -buildfile build.xml  javadoc

剩下的都在build.xml中,根据你的需要自己定义脚本程序就可以了
很简单,这样可控制你的应用。
分享到:
评论

相关推荐

    ant打包Web工程

    9. **持续集成**:在实际开发中,Ant常与持续集成服务器(如Jenkins、TeamCity)配合使用,自动执行构建、测试和部署流程,提高开发效率和产品质量。 总结,Ant作为Java开发中的重要工具,其在打包Web工程中的应用...

    贯通Java Web开发三剑客Eclipse+Tomcat+Ant整合开发.(党海峰)

    Eclipse通过插件系统可以扩展到各种开发需求,例如Java EE插件可以方便地创建和管理Web项目。 Tomcat是一个轻量级的Java Servlet容器,也是Apache软件基金会的Jakarta项目的一部分。Tomcat主要负责解析HTTP请求,...

    配合AntHill量化交易系统(自主研发)使用的策略监控网页平台,使用Django开发.zip

    标题中的“配合AntHill量化交易系统(自主研发)使用的策略监控网页平台,使用Django开发.zip”揭示了这个项目的核心内容。它是一个基于Django框架开发的策略监控平台,主要目的是服务于AntHill量化交易系统,该系统...

    AXURE元件库含ant的设计库

    总的来说,"AXURE元件库含ant的设计库"是一个实用的工具,尤其对于那些在React+Ant开发背景下进行网站后台设计的团队。它不仅简化了原型设计的过程,还确保了设计的规范性和一致性,是提升团队协作效率的重要辅助...

    Ant权威指南(ant 学习)

    Ant是Apache软件基金会开发的一个Java项目构建工具,它的设计目标是简化项目构建过程,提供一种跨平台的解决方案。Ant的主要优点在于其灵活性和可扩展性,通过自定义任务和宏定义,可以实现各种复杂的构建逻辑。 二...

    ant+tomcat

    在IT行业中,Ant和Tomcat是两个非常关键的工具,它们在Java应用程序的构建和部署过程中扮演着重要的角色。Ant是Apache软件基金会开发的一个...通过编写Ant脚本并配合Tomcat的管理功能,可以简化日常的开发运维任务。

    使用Maven开发Java Web应用

    Maven作为Java Web开发的重要工具,极大地提高了开发效率和项目管理的规范性。通过正确配置Nexus和Maven,可以有效地管理项目依赖,确保所有开发者的环境一致,同时便于团队协作和持续集成。在实际开发中,理解并...

    ant打包部署工具,官方下载

    在Java项目开发中,Ant的主要功能包括: 1. **编译源代码**:Ant可以调用JDK的javac命令,编译Java源代码为字节码文件。用户可以在构建文件中定义编译路径、源代码路径、输出路径等参数。 2. **处理资源文件**:...

    常用的ANT蚂蚁脚本

    总结来说,"常用的ANT蚂蚁脚本"涵盖了使用ANT配合XDoclet自动创建Hibernate映射文件,以及利用ANT自动化EJB项目的构建和部署流程。这些脚本对于理解ANT的工作原理,以及在实际开发环境中如何使用ANT进行项目管理具有...

    java web项目打包工具

    Java Web项目打包工具是开发人员在构建和部署Java Web应用程序时不可或缺的一个实用程序。它旨在通过提供一个用户友好的界面,使打包过程更加便捷高效,从而减轻开发过程中的工作负担。这种工具通常集成了多种功能,...

    零基础学Java[1].Web开发:JSP.Servlet.Struts.Spring.Hibernate.Ajax(PPT).rar

    【学习使用Ant】是关于构建工具的教程,Ant是Apache软件基金会的项目,用于自动化Java项目的构建、编译、测试等过程,通过XML配置文件定义任务,提高了开发流程的自动化程度。 总的来说,这个压缩包涵盖了从Web基础...

    Ant部署WebService服务

    - IDE集成:许多Java集成开发环境(IDEs),如Eclipse和IntelliJ IDEA,都支持Ant集成,可以直接在IDE中运行Ant脚本。 - 版本控制:与Git等版本控制系统结合,可以更好地管理构建脚本和源代码。 总结起来,"Ant...

    react+ant design admin

    通过这个"reactdemo"项目,你可以逐步了解并实践React的组件化开发,熟悉Ant Design的使用,以及如何在React项目中整合和定制UI。这将对你的React开发技能提升有很大帮助。同时,这个项目也是进一步学习React进阶...

    Ant权威指南

    Ant是一种基于XML的构建工具,由Jakarta项目开发,它简化了Java应用程序的构建过程,包括编译、打包、测试和部署等任务。它的设计目标是替代Make,提供跨平台的解决方案,并且与Java环境紧密集成。 2. **构建文件...

    以编程方式调用 Apache Ant

    至于"工具"标签,Ant本身就是一个工具,它可以与其他工具(如JAR、WAR打包工具,测试框架等)配合使用,实现整个软件开发生命周期中的自动化。 在与Tomcat相关的场景中,Ant可以用于部署Web应用程序。例如,我们...

    tieba spring mvc ant

    通过这些文件,开发者可以了解项目的结构和工作流程,进一步学习和研究如何将Spring MVC和Ant应用于实际的Web项目,特别是与Tieba相关的场景。 总结来说,Spring MVC是用于构建Web应用的框架,Ant是Java项目常用的...

    前端开发简历模板-web前端开发-三年-北京.docx

    前端开发简历模板-web前端开发-三年-北京.docx 本篇文章将对前端开发简历模板-web前端开发-三年-北京.docx的内容进行详细的解析和总结,涵盖标题、描述、标签和部分内容等方面。 标题 前端开发简历模板-web前端...

    java用ant打包

    9. **持续集成**:Ant与持续集成工具(如Hudson、Jenkins)配合良好,可以在代码提交后自动执行构建和测试。 总的来说,Ant作为Java项目的重要构建工具,提供了强大的功能来管理项目的生命周期。通过合理配置`build...

    ant自动发布工程

    "ant自动发布工程"是指利用Ant的脚本化特性,实现对Java工程的自动化发布流程,极大地提高了开发效率和减少了手动操作的错误。下面将详细阐述Ant在自动发布工程中的核心知识点。 1. **Ant基本概念** - **构建文件...

    Ant权威指南.rar

    Ant是Apache软件基金会的一个开放源代码项目,它以其简单、灵活和可扩展性在Java开发领域广泛应用。本指南深入浅出地介绍了Ant的核心概念、基本语法以及高级特性,旨在提升读者的项目管理和自动化构建能力。 Ant是...

Global site tag (gtag.js) - Google Analytics