Tomcat下载安装及常见问题解决办法

一、Tomcat的下载:

下载地址:http://tomcat.apache.org/ 下载Tomcat6.0(在左侧的Download下,考虑到稳定性现在企业大部分还在用Tomcat6.0

(1)这两种直接解压就可以使用,一般下载这一种(解压到你想放的文件夹下,可以直接更改解压后的文件名,文件夹命名最好是英文。)

32-bit Windows zip (pgp, md5)

64-bit Windows zip (pgp, md5)

(2)这个需要安装才能使用,适合纯新手

32-bit/64-bit Windows Service Installer (pgp, md5)


二、Tomcat在MyEclipse中集成:

==> Window-preferences-MyEclipse-Servers-Tomcat-Tomcat 6.x-点击右侧的Browse,选择你的Tomcat安装目录(我的是D:\Java\tomcat6),勾选Enable,在点击Apply

==> 点击Tomcat 6.x下的JDK,在右侧jdk name下点击下拉箭头,选择你安装的jdk版本

==> 在Optional java JVM arguments下的输入框填入 -Xms128m -Xmx512m -XX:MaxPermSize=256m在点击Apply

==> 点击Tomcat 6.x下的Launch,勾选DeBug mode,在点击Apply,点击OK即可


三、Tomcat常见问题与解决办法

1、手动启动tomcat时cmd窗口一闪而过解决方法。

问题现象:在实际开发中一般都是eclipse+tomcat(也许还会用到tomcat的插件),我们只需要在eclipse中单击servers上的按钮就可以成功启动tomcat了,

但是如果想在tomcat的安装目录下 双击startup.bat启动时却一闪而过了。这是为什么呢(tomcat启动失败),马上就带大家看看具体的原因。

下面我先跟大家确认一下问题出现的前提条件(本机版本java:1.6.20,tomcat:6.0.32):

1)在eclipse里面启动tomcat时都是正常的。(效果见下图)

2)在系统中配置了各种环境变量如下:

JAVA_HOME:H:\DevelopTools\Java\jdk1.6.0_20

CATALINA_BASE:H:\DevelopTools\apache-tomcat-6.0.32

CATALINA_HOME:H:\DevelopTools\apache-tomcat-6.0.32

CLASSPATH:.;%JAVA_HOME%;%JAVA_HOME%\jre\lib;

PATH:.;%JAVA_HOME%\bin;%CATALINA_HOME%\bin;


来分析一下:进入tomcat的安装目录(即解压后放置的地方),看到圈出红色的3个bat文件,一般通过startup.bat启动tomcat时流程是:startup->catalina->setclasspath->catalina,如果这3个bat文件里面有一个出现错误的话就是启动失败。为了找到一闪而过的原因得需要我们来看看这3个文件里面到底是什么了


先记事本打开startup.bat,找到最后一句话::end,我们知道end表示结束的意思,:end是一个标记,我们在后面加上一句pause(暂停等待的意思)


再次执行startup.bat,就会看到图4,当我们按任意的键时cmd窗口又是一闪而过了。但是这已经确定了我们的环境变量都是正确的。


为了更加详细的看到信息,我们再来更改一句:找到call "%EXECUTABLE%" start %CMD_LINE_ARGS% 把里面的start替换为run。



再来看看cmd窗口里面输出错误信息了:

error occurred during initialization of vm

could not reserve enough space for object heap

could not create the java virtual machine

我们大体可以理解为:因为程序请求不到足够的内存就启动不了vm,导致程序退出。 那么我们可以来解决这个问题了:申请足够的内存就可以了

如下操作:在catalina.bat中 找到Execute The Requested Command下面的


set JAVA_OPTS把这一句替换为:set JAVA_OPTS=%JAVA_OPTS% -server -Xms800m -Xmx800m -XX:MaxNewSize=256m 再次启动startup.bat 会看到


已经启动成功了(记得把之前修改的内容run、pause还原回去)。

到这里,貌似问题已经解决了,如果遇到其他的问题该怎么解决呢(因为其他的问题也会导致cmd窗口一闪而过)?

我先跟大家简单说一下:

参考文档:

startup.bat主要负责找到catalina.bat文件,并执行catalina.bat。

catalina.bat是tomcat所有脚本中最重要的脚本,完成几乎所有的tomcat操作。如启动,关闭等等,都是由catalina.bat脚本来完成的。

setclasspath.bat是用来设置基础的环境变量的(如JAVA_HOME等)

 


2、通过startup.bat启动时报错:

严重: Error initializing endpoint

java.lang.Exception: Socket bind failed: [730048] ?????????×???(Э?é/???????/???)????í??

at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:647)

at org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:107)

at org.apache.catalina.connector.Connector.initialize(Connector.java:1014)

at org.apache.catalina.core.StandardService.initialize(StandardService.java:680)

at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:795)

at org.apache.catalina.startup.Catalina.load(Catalina.java:524)

at org.apache.catalina.startup.Catalina.load(Catalina.java:548)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

 

总结了一下,大致有以下几种解决方案:

1.端口号被占用,更改tomcat端口号;

2.把Tmcat服务属性更改为手动,重新加载Tomcat;

3.重启Myeclipse;

4.打开任务管理器,找到javaw.exe,把这个进程杀掉;

5.开始-运行-输入cmd-netstat   -ano-回车-查到8888端口的PID

通过Ctrl+Alt+Delete快捷键打开Windows任务管理器-查看-选择列-勾选PID(进程标识符)(P)-找到8888端口的PID-结束进程

或开始-运行-输入cmd-netstat -ano|find "8888"-tasklist|find "PID "-askkill /pid PID

PS:我当时是现在MyEclipse中启动了一次Tomcat,然后通过startup.bat启动时报了上面的错误。但在任务管理器中没有找到上面的进程,然后我重启了一次计算机就可以运行startup.bat


3、打开MyEclipse 的Tomcat的时候突然出现 Error starting Tomcat 6.x server 错误。

修改方案:运行cmd,netsh winsock reset,这个是重置winsock,可能是那个软件篡改了winsock

但是在修改 cmd的过程中又总是出现 “请求的操作需要提升(作为管理员运行)。”,接着就是具体步骤:在C:\Windows\System32下找到cmd.exe程序,右击“以管理员身份运行” 这样再输入上面的修改命令即可;






 

posted @ 2014-10-03 11:24  月壹墨  阅读(1812)  评论(0编辑  收藏  举报