1、tomcat闪退

a、环境变量错误

startup.bat最后假如PAUSE进入调试状态,双击startup.bat,可以看到错误,根据错误提示设置相应的环境变量,JAVA_HOME等。

b、eclispe设置问题,当eclispe server locations选项为第二项时,发布项目会修改tomcat下面的server.xml文件,如果中间存在手动清理发布目录会导致server.xml中注册的web服务找不到相关文件而导致闪退;也就是说,闪退也可以查看server.xml,是不是配置错误导致的。

2、eclipse发布web工程

a、将server locations设置为可配状态

右键server,选择Add and Remove...,然后选择Remove all,确定。

右键server,选择clean。

    

b、配置server locations

选项如图所示

    

经过a步骤可以使得选项成可选状态,其中:

第一项为使用eclipse本地配置metadata,并不会修改tomcat配置,而是部署调试的web项目在eclipse工作空间,调用tomcat组件实现启动web服务。

第二项为使用tomcat安装目录,并且会修改server.xml文件

第三项为使用特定目录

其他选项:server path为tomcat根目录,Deploy为发布目录。

如果上图选择第一项, 发布的路径是D:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps,并且调用tomcat组件,调试本地项目,tomcat webapps下的项目并不会启动,如果访问localhost:8080会产生404错误。

如果选择第二个选项,会在tomcat目录下建立一个wtpwebapps文件夹,并且会把web工程生成的产物拷贝到该目录下, 同时会在tomcat的conf目录下的server.xml中<host>节点注册一个web工程,如图:

docBase为web工程文件,可为mavern target下的相应工程名的文件夹产物,也可以为war文件,path则为url的地址。此时,tomcat中部署的其他web服务也能正常访问(不推荐这种方法)。如果中间存在错误,可能导致tomcat独立启动时闪退。

第三个选项暂时没用过,应该是可以自定义发布的路径。

3、tomcat发布工程

a、发布到webapps目录下

将工程名产物文件夹或者导出为war包放到目录下即可,war在tomcat会多一个步骤,就是解压为和产物文件夹一样的文件夹。

b、发布到其他路径(如tomcat下的mydir)

将相应工程文件夹或者war拷贝到tomcat下的mydir下

修改conf下的server,在host节点下增加context节点,注册web服务。

path="" 为部署后运行的url路径,docBase为你的war的文件名。 第一次运行的时候,tomcat会自动解压war,生成path指定名称的网站。

不管是war文件还是web工程产物文件夹,最终都会被tomcat拷贝到webapps下面,只是war是解压之后拷贝。

4、发布到tomcat下是war好还是产物文件夹好?

个人认为:打成war包的好处是不会缺少目录,并且只管理好一个发布文件就好。

java web工程发布以及解决tomcat闪退的更多相关文章

  1. 解决tomcat闪退问题

    https://blog.csdn.net/zh2nd/article/details/79068680 转载此博客链接内容,非常感谢博主 本文参考CSDN博主 哈克沃德.的<Tomcat8启动 ...

  2. java web 工程找不到tomcat类 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

    ava.lang.ClassNotFoundException: com.mysql.jdbc.Driverat org.apache.catalina.loader.WebappClassLoade ...

  3. Java Web工程连接MySQL数据库及Tomcat服务器页面中文乱码

    Java Web工程连接MySQL数据库 一. 准备工作 1.下载连接MySQL数据库的JDBC (可以去官网下,也可以去百度云找) 2.将下载的jar文件复制到Tomcat的lib目录下 3.新建一 ...

  4. Tomcat设置默认启动项目及Java Web工程设置默认启动页面

    Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下: 1.打开tomcat的安装根目录,找到Tom ...

  5. Java Web项目发布及使用自定义域名

    详细讲解的网址: http://wenku.baidu.com/link?url=-ACZxKUcfrbhrMRUP3Ov-Q_c-Q9JPrA9D1fzHjHuJsWwZfRsVDVQ2qBtoY7 ...

  6. Maven启动Java Web工程,8081和8086端口号被占用

    Maven启动Java Web工程, <!-- 配置tomcat插件 --> <build> <plugins> <plugin> <groupI ...

  7. Java Web乱码原因与解决

    Java Web乱码原因与解决 一.了解编码常识: 1.ASCII 码 众所周知,这是最简单的编码.它总共可以表示128个字符,0~31是控制字符如换行.回车.删 除等,32~126是打印字符,可以通 ...

  8. 8. 启动Tomcat闪退无法启动原因解决

    原因可能是由于下面问题导致的: 1.Tomcat环境在不同电脑上引用的jdk路径不同 比如:在A电脑上Tomcat引用的jdk路径为:C:\Java\jdk1.6.0_10 而在B电脑上jdk的安装路 ...

  9. 使用 maven 创建 java web 工程

    本文主要讲述使用 maven 命令行的形式来创建  java web 工程 开发环境 jdk 1.7 maven 3.5.0 spring 3.2 tomcat 7 eclipse Mars Rele ...

随机推荐

  1. HTML5的本地存储 LocalStorage

    localStorage顾名思义,就是本地存储的意思,在以前很长一段时间,要想在客户端存 储一些配置及登录信息等数据都只能通过COOKIE或flash的方式,如今html5来临,也 带来了更强大的本地 ...

  2. 【概率】poj 2096:Collecting Bugs

    Description Ivan is fond of collecting. Unlike other people who collect post stamps, coins or other ...

  3. 论MOBA类游戏五号位的重要性

    观众朋友们,也许你对题目很好奇,才打开这篇文章.为什么技术圈中会出现游戏类的软文?如果时间充足,可以继续往下看. MOBA 类游戏的兴起,逐渐吞噬游戏市场,以病毒式的扩张方式肆意改变着游戏玩家内心对游 ...

  4. Linq基本用法

  5. strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签

    定义和用法 strip_tags() 函数剥去 HTML.XML 以及 PHP 的标签. 语法 strip_tags(string,allow) 参数 描述 string 必需.规定要检查的字符串. ...

  6. BZOJ 1030 文本生成器

    很老的题目了,很早以前学AC自动机的时候就A过一次 今天算是复习啦 我们可以把问题转化成一个给定字符串都没出现的字符串有多少个 我们建立AC自动机,设dp[i][j]表示走了i步当前在j节点上 在DP ...

  7. C语言不是C++的严格子集

    C语言是C++的子集吗?C++是在C语言的基础上扩展而来并包含所有C语言的内容吗? 回复: 从实用角度讲,C++属于C语言的一个超集,基本上兼容ANSI C.但是从编译角度上讲,C语言的有些特性在C+ ...

  8. Linux下Keepalived 安装与配置

    Keepalived 安装与配置 一.环境说明 1.操作系统内核版本:2.6.9-78.ELsmp 2.Keepalived软件版本:keepalived-1.1.20.tar.gz 二.环境配置 1 ...

  9. Delphi里的RTTI与反射(举例换掉FOnChange)

    Delphi2010之后的RTTI做了很大休整,现在用起来很爽了哦.甚至可以获取某些类的内部私有单元,然后为其赋值!讲这个RTTI增强的,可以参考网上的多个博客内容,我列举一下:Delphi2010R ...

  10. Git教程之撤销修改(7)

    自然,你是不会犯错的.不过现在是凌晨两点,你正在赶一份工作报告,你在readme.txt中添加了一行: