tomcat遇到版本问题

1.Dynamic web module

2.J2EE  Web modules

3.Tomcat version

4.<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    id="WebApp_ID" version="3.0">
今天做一个项目,组长给了源码,然后说build之后放在tomcat里面然后就能跑了,听起来很简单,但是并不是

我用了tomcat6,结果试了n多次,都不行,后来组长发了一个他用的,是tomcat5.5,折腾了很久终于跑起来了,

大概原因是由于上面的2,3,4不兼容的原因,具体为什么不兼容不清楚

4.是web.xml的里面的,这里定义了版本是3.0(我自己家里的项目),我遇到的问题是版本是2.4的,折腾了很久不行的原因是

Tomcat version 5.5 only supports J2EE 1.2, 1.3, 1.4 Web modules

我用了tomcat6,就不对了

把一个简单的项目是可以直接改变其Dynamic web module,然后直接用tomcat救能跑了,

具体则么做参见eclipse中启动调试maven构建的javaweb项目

但是如果是复杂的项目比如把jsp打成了一个war包把java代码打成了一个war包,然后这种方法就不适用了,就要用远程调试了.

其次还要还要设置

<Context>元素的属性:
path:指定访问该Web应用的URL入口。
docBase:指定Web应用的文件路径,可以给定绝对路径,也可以给定相对于<Host>的appBase属性的相对路径,如果Web应用采用开放目录结构,则指定Web应用的根目录,如果Web应用是个war文件,则指定war文件的路径。(指定项目所在地址)
reloadable:如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。

 例子:

<Context crossContext="true" docBase="E:/tomcatApp/JeasyCMS" path="/cms" reloadable="true">
</Context>

出处:http://blog.csdn.net/dreamsky_boy/article/details/5319423

bin/catalina.bat中搜索set CATALINA_OPTS设置

set CATALINA_OPTS= -Xdebug -Xrunjdwp:transport=dt_socket, address=8000,server=y,suspend=y

-Xdebug

启用调试特性

-Xrunjdwp

启用JDWP实现,它包含若干子选项:

transport=dt_socket

JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。

address=8000

JVM在8000端口上监听请求。

server=y

y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。

suspend=y

y表示启动的JVM会暂停等待,直到调试器连接上。

suspend=y这个选项很重要。如果你想从Tomcat启动的一开始就进行调试,那么就必须设置suspend=y。

Tomcat version 5.5 only supports J2EE 1.2, 1.3, 1.4 Web modules
Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules

 

参考blog

http://blog.csdn.net/spring_model/article/details/50554374

原文地址:https://www.cnblogs.com/rocky-AGE-24/p/6280110.html