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. WebView加载HTML图片大小自适应与文章自动换行

    http://www.brighttj.com/ios/ios-webview-load-html-image-adaptive.html 在很多App中都会使用到webview,尤其是在加载新闻内容 ...

  2. IOS 数据库

    系统自带可以储存字段的字典: NSUserDefaults *user = [[NSUserDefaults alloc] init]; 存 : [user setObject:@"YES& ...

  3. ubuntu linux mysql 安装 基本操作 命令

    mysql --help #如果有信息证明系统已经安装了mysql mysql -V #查看版本号 netstat -tap|grep mysql #检查mysql是否在启动状态 卸载mysql: s ...

  4. Busybox下tftp命令使用详解

    http://blog.chinaunix.net/uid-375398-id-1991686.html Busybox下的tftp命令可以用来进行单文件传输.使用的时候,是把电脑作为服务器Serve ...

  5. mysql5.6.34-debug Source distribution编译的几个错误

    raspberrypi下编译mysql5.6 debug版源码. 1. 启动错误 和mysqld相关的文件及文件夹权限必须设置为mysql用户可读可写可执行!谨记! 2. gdb错误 root@: g ...

  6. window.innerWidth、document.body.clientWidth和html的大小的区别

    首先,我们知道document.body指向的就是body元素,如此,我们就可以以document.body来获取body的大小.何以知之?如下代码: var body = document.quer ...

  7. Java EE 和 Java Web

    什么是 Java Web 应用程序? Java Web 应用程序会生成包含各种类型的标记语言(HTML 和 XML 等)和动态内容的交互式 Web 页.它通常由 Web 组件组成(如 JavaServ ...

  8. springboot使用之二:整合mybatis(xml方式)并添加PageHelper插件

    整合mybatis实在前面项目的基础上进行的,前面项目具体整合请参照springboot使用之一. 一.整合mybatis 整合mybatis的时候可以从mybatis官网下载mybatis官网整合的 ...

  9. 简单的比大小 shell 脚本和ping

    #!/bin/bash echo "输入第一个数字"read Aecho "输入第二个数字"read B if [ $A -gt $B ] thenecho & ...

  10. 关于原生JS获取类相关的代码

    <script> var FungetElementsByClassName = function(str,root,tag){ if(root){ root = typeof root ...