xx系统第一期工程完成,今天老大要我去部署系统,从来就没有在tomcat下部署过,一直都是在myeclipse下部署、启动、运行即可,所以这次遇到了几个问题,记录下来。

tomcat启动

在安装tomcat后,配置好环境变量,双击tomcat\bin路径下的startup.bat,并没有出现我预期的命令框,而是一闪而过。这里肯定有错,至于是什么错误我还不知道,所以cmd命令启动报如下错误:

The CATALINA_HOME enviernment variable is not defined correctly
      This environment variable is needed to run this program
      大致的意思就是说运行这个程序需要的环境变量CATALINA_HOME没有定义。对于这个CATALINA_HOME是什么东东我还真的木有遇到过,百度一把:原来在Tomcat 4.0以后采用了新的Servlet容器Catalina,所以很显然CATALINA_HOME是tomcat运行时的环境变量,类似于JAVA_HOME。所以在环境变量中配置CATALINA_HOME=” D:\tomcat-6.0.29\tomcat-6.0.29”,该值为tomcat的解压(安装)路劲。
      重新启动tomcat即可。

总结:在启动tomcat时我们配置的环境变量应该包括如下几个:JAVA_HOME、classpath、Path、CATALINA_HOME。

在tomcat下部署项目

在tomcat下部署项目主要有如下三种方式:
      第一种:直接拷贝。将项目下的WebRoot文件夹复制到$CATALINA_HOME\webapps路劲下,命名为qyzygl,启动服务即可,这种方式非常简单,也是想我这样的初学者经常用到的方式。访问地址如下:

http://localhost:8080/qyzygl
      第二种:这种方式并不需要将项目拷贝到webapps路径下,可以直接F:/路径下部署。方法如下:更改$CATALINA_HOME\conf\server.xml文件,在<host>标签内添加<Context>标签,内容如下:<Context docBase="D:/creator/workspace/qyzygl/WebRoot" reloadable="false" path="/ qyzygl "/>。其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。 path属性的值是访问时的根地址。访问地址如下:http://localhost:8080/qyzygl
      第三种:CATALINA_HOME\conf\Catalina\localhost中添加一个xml文件,如qyzygl.xml,内容如下:<Context docBase="F:/qyzygl" reloadable="false" />大家可能发现和第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。访问地址如下:http://localhost:8080/qyzygl/
      第四种:使用.war文件包
      其实前面三种我们一直都是将qyzygl文件部署在服务器中,其实我们可以将应用程序打包成.war包,然后再部署在服务器上。打包步骤如下:
      打开cmd命令提示符。
      在命令提示框中进入D:/creator/workspace/qyzygl文件中,然后输入如下命令:jar cvf qyzygl.war */.然后提示框会出现非常多的类似于xxx写入之类的,这个过程就是在将qyzygl文件中的内容打包成.war文件,完成之后会在该目录下生成qyzygl.war文件。
      部署.war文件非常简单,将.war文件拷贝到webapps文件路径下或者将docBase=” D:/creator/workspace/qyzygl/WebRoot”更改为docBase="F:\qyzygl.war"即可。重写启动服务就可以完成部署了。

在tomcat下部署工程的更多相关文章

  1. tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决

    tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决 在开发新项目的时候,有时候为了省时,直接把曾经做过的项目工程A拷贝成改名为B工程,然后再在B工程上进行功能的开发, 此 ...

  2. JFinal 项目 在tomcat下部署

    原文:http://my.oschina.net/jfinal/blog/353062 首先明确一下 JFinal 项目是标准的 java web 项目,其部署方式与普通 java web 项目没有任 ...

  3. [saiku] 在 Tomcat 下部署 saiku

    上一篇介绍了如何配置免登录[免登录进入管理台] 本文主要是一步一步解释如何在Tomcat下部署saiku,为了让你更好更快的使用. 开始之前,假设你已经比较熟悉数据集市数据库,以及如何建立Mondri ...

  4. 在tomcat下部署两个或多个项目时 log4j和web.xml配置webAppRootKey 的问题(转)

    在tomcat下部署两个或多个项目时 web.xml文件中最好定义webAppRootKey参数,如果不定义,将会缺省为"webapp.root",如下: <!-- 应用路径 ...

  5. log4j和web.xml配置webAppRootKey 的问题(一个tomcat下部署多个应用)

    转自:http://blog.csdn.net/arvin_qx/article/details/6829873 在tomcat下部署两个或多个项目时,web.xml文件中最好定义webAppRoot ...

  6. tomcat下部署了多个项目启动报错java web error:Choose unique values for the 'webAppRootKey' context-param in your web.xml files

    应该是tomcat下部署了多个项目且都使用log4j. <!--如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的"webapp.root". ...

  7. 一个Tomcat下部署多个项目异常:org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean 的解决方法

    内容简介 在测试服务器上Tomcat下部署两个Spring boot项目,总是一个能启动成功,另一个启动不成功.这两个war包单独部署均能正常启动. 查看日志:启动时报出 org.springfram ...

  8. Tomcat 6 部署工程总结,使用JNDI数据源配置

    工程需要用JNDI数据源方式部署到tomcat,参考网上文章后,经过配置测试,摸索出来了.     环境说明: 数据库:Oracle9i Web服务器:tomcat-6.0.33 tomcat启动方式 ...

  9. 在Tomcat下部署web项目

    每个web项目可以以两种方式存在,如联合风控项目,Urc.war,另一中是Urc解压后的目录结构.而tomcat目录下的\webapps\下则均是要部署的web项目解压后的文件夹,启动tomcat后, ...

随机推荐

  1. C# 京东模拟登录小结

    最近有需要模拟京东登录,在解决过程中遇到了一些问题,因此这里记录下来避免以后遇到同样的问题. 首先第一步需要做的是找到登录请求网址和关于请求所需的一些信息.这里可以用抓取工具或者直接用firebug或 ...

  2. [erlang]supervisor(监控树)的重启策略

    1. init函数 init() -> {ok, {SupFlags, [ChildSpec,...]}} | ignore. [ChildSpec,...] 是在init之后默认要启动的子进程 ...

  3. [php-src]Php扩展的内存泄漏处理思路

    内容均以php5.6.14为例. 一. 封装函数时产生 memory leaks. [weichen@localhost www]$ php .php [,] [Tue Jul :: ] Script ...

  4. Android安全之Https中间人攻击漏洞

    Android安全之Https中间人攻击漏洞 0X01 概述   HTTPS,是一种网络安全传输协议,利用SSL/TLS来对数据包进行加密,以提供对网络服务器的身份认证,保护交换数据的隐私与完整性. ...

  5. SAP第一轮面试总结

    1. 开始是一套面试题,可以选JAVA或C/C++两个语言的英文题.基础语法题,以指针为主. 2. 英文介绍,自由发挥.问了以下几个问题: 离职的愿意,未来五年的计划,介不介意使用ABAP langu ...

  6. 和以往印象不同的Java

    Java编程概述 一个Java源文件至多有一个public类,但是可以有很多class的定义 public static void main (String args[]) public 代表公共的, ...

  7. 今个忽然晓得,原来radio不是普通去获取值的!

    今日,写js校验.对于不太会的,总是陌生的.碰见radio的取值,习惯的用document.getElementsByName("")[0].value去获取值,却忘记了radio ...

  8. 移动端字体缩放问题解决方案-摘自《html5移动web开发实践》

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta name ...

  9. C# 以附加文件方式连接SQL Server数据库文件

    string str = @"data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFileName=z:\ttt.mdf;Us ...

  10. .net之微信企业号开发(三) 回调模式的接口开发

    一.前言 微信企业号应用中,有两种模式,一种是普通模式,这种模式只能进行简单网页链接,以及发送固定的消息.为了可以让企业号的用户更好的与应用交互,微信提供了回调模式,这种回调模式的可以将用户发送给微信 ...