一个简单的tomcat部署方案

原创 2006年05月19日 00:25:00
需求如下:
要将widow下开发的web应用部署到linux的机器下

step1)在本地使用ant将项目打成war
ant脚本如下:
<project name="Build" default="war" basedir=".">

    <property name="project.name" value="baby"/>
    <property name="build.dir" location="build"/>
    <property name="src.dir" location="src"/>
    <property name="src.dir.java" location="${src.dir}/java"/>
    <property name="src.dir.config" location="${src.dir}/config"/>
    <property name="lib.dir" location="lib"/>
    <property name="lib.dir.run" location="${lib.dir}/run"/>
    <property name="dist.dir" location="dist"/>
   
    <property name="web.dir" location="htdocs"/>
   
   
    <path id="project.classpath">
        <fileset dir="${lib.dir}" includes="**/*.jar"/>
       
        <pathelement location="${build.dir}"/>
       
       
    </path>
   
    <target name="prepare">
        <mkdir dir="${build.dir}"/>
        <mkdir dir="${dist.dir}"/>
    </target>
   
    <target name="compile" depends="prepare">
        <javac srcdir="${src.dir.java}" destdir="${build.dir}">
            <classpath refid="project.classpath"/>
        </javac>
        <copy todir="${build.dir}">
            <fileset dir="${src.dir.config}"/>
        </copy>
    </target>



    <target name="xdoclet" depends="compile,springdoclet,hibernatedoclet" />

    <target name="hibernatedoclet">
        <taskdef name="hibernatedoclet" classpathref="project.classpath" classname="xdoclet.modules.hibernate.HibernateDocletTask" />
        <hibernatedoclet excludedTags="@version,@author,@todo,@see" destDir="${build.dir}" addedTags="@xdoclet-generated at ${TODAY},@copyright The XDoclet Team,@author XDoclet,@version ${version}">
            <fileset dir="${src.dir.java}" includes="**/domain/*.java" />
            <hibernate version="2.0" />
        </hibernatedoclet>
    </target>



    <target name="springdoclet">
        <taskdef name="springdoclet" classpathref="project.classpath" classname="xdoclet.modules.spring.SpringDocletTask" />
        <springdoclet destDir="${build.dir}">
            <fileset dir="${src.dir.java}">
                <include name="**/service/impl/*.java" />

            </fileset>
            <springxml destinationFile="applicationContext-${project.name}-service.xml" />
        </springdoclet>

        <springdoclet destDir="${build.dir}">
            <fileset dir="${src.dir.java}">
                <include name="**/dao/**/*.java" />
            </fileset>
            <springxml destinationFile="applicationContext-${project.name}-dao.xml" />
        </springdoclet>

    </target>
   
    <target name="war" depends="xdoclet">
        <war destfile="${dist.dir}/baby.war"
             webxml="${web.dir}/WEB-INF/web.xml" >
             <classes dir="${build.dir}"/>
             <fileset dir="${web.dir}" excludes="WEB-INF/**/*"/>
             <lib dir="${lib.dir.run}"/>
        </war>
    </target>   
   
    <target name="clean">
        <delete dir="${build.dir}"/>
        <delete dir="${dist.dir}"/>
    </target>

</project>

2)step2配置linux机器上的tomcat服务器
 <Host appBase="/var/www/baby" name="baby.mofile.cn"  debug="0" unpackWARs="true">
        <Context displayName="Welcome to Tomcat" docBase="/var/www/baby/baby" path=""    reloadable="true"         debug="0">
        </Context>
       </Host>
注意上面的是appBase是虚拟主机目录,name是虚拟主机域名,docBase是服务器根目录,unpackWARs=“true"将war解压

3)step3 拷贝文件
通过secureFX将baby.war拷到linux下的/var/www/baby

完成这面步骤,启动linux下的tomcat服务器,ok

总结:
不得不说这不是个成熟的方案,虽然可行。这种半自动的部署方式,没有完全利用ant的特性。抽象来说没有充分利用程序的能力将人从重复的劳动解脱出来。

完全可以利用ant本地打包再远程部署,一键搞定。或者直接在linux机器上写个shell脚本再调用linux机器上的ant脚本,将版本服务器中的文件checkout进行构建.

Tomcat部署方案

Tomcat在中小项目中应用比较多,这篇文章主要把Tomcat部署的方式方法、经验技巧进行整合,以供以后自己参考,也希望各位牛人分享自己宝贵的经验。(这篇文章会不断丰富更新。) 一、如何实现Tomca...
  • ldx86524
  • ldx86524
  • 2013年07月19日 15:55
  • 239

Java实现简易Tomcat服务器(清晰易懂)

Tomcat服务器是一个轻量级的Java代码实现的WEB服务器。这篇文章将会讲述如何用Java实现一个简易版的Tomcat服务器。 简单的讲,简易原理是这样的: 1. Tomcat开始运行之后,会...
  • L_BestCoder
  • L_BestCoder
  • 2017年04月26日 17:06
  • 1955

TOMCAT部署调优方案

1:部署 1.1在服务器上安装tomcat6软件和JDK6程序。 1.2设置服务器共享磁盘空间。 1.3在共享磁盘上拷贝一份‘部署’软件。 1.4配置服务器tomcat软件指向‘部署’软件。 ...
  • cs_1436161885
  • cs_1436161885
  • 2017年11月15日 22:22
  • 18

搭建一个简单的服务器

做Android开发有一段时间了,经常与后台服务器进行交互,有时就会想,后台服务器到底是怎么工作的呢?我发出去一个http请求,他怎么接收到,又怎么进行处理、返回信息呢? 本文描述了搭建一个简单静态服...
  • lintax
  • lintax
  • 2017年03月19日 17:21
  • 2942

一个简单数据库连接池的实现

一、已实现功能   数据库连接缓存。将数据库连接与线程ID绑定并提供执行数据库操作时检测。数据库连接超时检测。初始化数据库环境,包括初始化数据库,数据库用户,数据库表。 二、代码列表: 1、MySql...
  • huxuemin
  • huxuemin
  • 2016年10月04日 13:09
  • 963

一个简单的异步加载方案

android的listview里面通常要实现一些异步加载的场景,比如,listview用于呈现一个帖子的列表,那帖子里面的图片,或者一些帖子其他的即时数据通常就要去异步加载,其中图片这个大问题git...
  • ly513782705
  • ly513782705
  • 2014年12月27日 20:29
  • 553

跨域的一个简单方案

带熟悉的都可以跨域, 如客户端: type="application/javascript" src="http://zrb_t211.zhenrongbao.com/pindex/jp"> 服...
  • yeyue_zar
  • yeyue_zar
  • 2017年03月06日 16:05
  • 59

Redis 简单HA方案小结

策略摘要 主从各一台互备,不做读写分离,备库只同步,不对外提供服务。主库无持久化策略,备库选用rdb。 HA方案 原有cache01做master,无需persistence以便提供最佳...
  • doraeimo
  • doraeimo
  • 2011年12月01日 10:23
  • 4689

同一个Tomcat部署多个项目

同一个Tomcat 同一个端口 部署多个项目第一步:把待发布的多个项目.war文件放入tomcat的webapps文件下下 第二步:修改 $TOMCAT_HOME\conf 下的server....
  • dreamstar613
  • dreamstar613
  • 2017年07月18日 11:28
  • 1134

一个tomcat部署多个项目(同端口,多项目,不同访问路径)

个人觉得简单易操作的两种部署方式: 1.使用tomcat的自动部署。(适用于文件和war包,不需要重启tomcat) 2.自定义web部署文件。(只适用于文件形式的,需要重启tomcat)...
  • smollsnail
  • smollsnail
  • 2017年11月14日 15:30
  • 736
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个简单的tomcat部署方案
举报原因:
原因补充:

(最多只允许输入30个字)