java web工程发布以及解决tomcat闪退
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闪退的更多相关文章
- 解决tomcat闪退问题
https://blog.csdn.net/zh2nd/article/details/79068680 转载此博客链接内容,非常感谢博主 本文参考CSDN博主 哈克沃德.的<Tomcat8启动 ...
- java web 工程找不到tomcat类 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
ava.lang.ClassNotFoundException: com.mysql.jdbc.Driverat org.apache.catalina.loader.WebappClassLoade ...
- Java Web工程连接MySQL数据库及Tomcat服务器页面中文乱码
Java Web工程连接MySQL数据库 一. 准备工作 1.下载连接MySQL数据库的JDBC (可以去官网下,也可以去百度云找) 2.将下载的jar文件复制到Tomcat的lib目录下 3.新建一 ...
- Tomcat设置默认启动项目及Java Web工程设置默认启动页面
Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下: 1.打开tomcat的安装根目录,找到Tom ...
- Java Web项目发布及使用自定义域名
详细讲解的网址: http://wenku.baidu.com/link?url=-ACZxKUcfrbhrMRUP3Ov-Q_c-Q9JPrA9D1fzHjHuJsWwZfRsVDVQ2qBtoY7 ...
- Maven启动Java Web工程,8081和8086端口号被占用
Maven启动Java Web工程, <!-- 配置tomcat插件 --> <build> <plugins> <plugin> <groupI ...
- Java Web乱码原因与解决
Java Web乱码原因与解决 一.了解编码常识: 1.ASCII 码 众所周知,这是最简单的编码.它总共可以表示128个字符,0~31是控制字符如换行.回车.删 除等,32~126是打印字符,可以通 ...
- 8. 启动Tomcat闪退无法启动原因解决
原因可能是由于下面问题导致的: 1.Tomcat环境在不同电脑上引用的jdk路径不同 比如:在A电脑上Tomcat引用的jdk路径为:C:\Java\jdk1.6.0_10 而在B电脑上jdk的安装路 ...
- 使用 maven 创建 java web 工程
本文主要讲述使用 maven 命令行的形式来创建 java web 工程 开发环境 jdk 1.7 maven 3.5.0 spring 3.2 tomcat 7 eclipse Mars Rele ...
随机推荐
- @Repository、@Service、@Controller 和 @Component(转)
鸣谢:http://blog.csdn.net/ye1992/article/details/19971467 @Repository.@Service.@Controller 和 @Componen ...
- PAT-乙级-1013. 数素数 (20)
1013. 数素数 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 令Pi表示第i个素数.现任给两个正整 ...
- XSS与CSRF两种跨站攻击比较
XSS:跨站脚本(Cross-site scripting) CSRF:跨站请求伪造(Cross-site request forgery) 在那个年代,大家一般用拼接字符串的方式来构造动态SQL 语 ...
- ActivePython2.7 +Firefly1.2.2+WIN7服务器搭建过程(已通过)
原地址:http://www.9miao.com/question-15-54027.html 1.ActivePython2.7 版本(内部已经包含easy_install,pywin32)2.所需 ...
- linux查找某个文件中单词出现的次数
文件名称:list 查找单词名称:test 操作命令: (1)more list | grep -o test | wc -l (2)cat list | grep -o test | wc -l ( ...
- C#获取cpu序列号 硬盘ID 网卡硬地址以及操作注册表 .
转:http://blog.csdn.net/smartsmile2012/article/details/8682295 #region 获取cpu序列号 硬盘ID 网卡硬地址 /**/ /// & ...
- 解决git Push时请求username和password,而不是ssh-key验证
转载自:https://blog.lowstz.org/posts/2011/11/23/why-git-push-require-username-password-github/ 之前开始用git ...
- string.Join和string.Concat的区别
源自Difference between String.Join() vs String.Concat() With .NET 4.0, String.Join() uses StringBuilde ...
- Angularjs checkbox的ng属性
angularjs 默认给 input[checkbox] 元素定制了一些属性,如: <input type="checkbox" ng-mudel="name&q ...
- CodeForces Round #287 Div.2
A. Amr and Music (贪心) 水题,没能秒切,略尴尬. #include <cstdio> #include <algorithm> using namespac ...