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

摘要:
让我确认问题的先决条件:1)在eclipse中启动tomcat是正常的。2) 系统中的各种环境变量配置如下:JAVA_ HOME:H:DevelopmentToolsJavajdk1.6.0_20CATALINA_BASE:H:DvelopmentToolsapache-tomcat-6.0.32CATALINA_ HOME:H:Development Toolsapache-to-mcat-6.0-32CLASSPATH:.;%JAVA_主页%;%JAVA_ HOME%jrelib;路径:.;%JAVA_ HOME%in;%CATALINA_ HOME%in;要进行分析,请进入tomcat安装目录,并看到三个红色的bat文件,通常是通过启动。当bat启动tomcat时,过程是:startup-˃catalina-˃setclasspath-˃catalina。如果三个bat文件中的一个发生错误,则启动失败。卡塔琳娜。bat是所有tomcat脚本中最重要的脚本,它完成了几乎所有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下载安装及常见问题解决办法第1张

二、Tomcat在MyEclipse中集成:

==> Window-preferences-MyEclipse-Servers-Tomcat-Tomcat 6.x-点击右侧的Browse,选择你的Tomcat安装目录(我的是D:Java omcat6),勾选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:DevelopToolsJavajdk1.6.0_20

CATALINA_BASE:H:DevelopToolsapache-tomcat-6.0.32

CATALINA_HOME:H:DevelopToolsapache-tomcat-6.0.32

CLASSPATH:.;%JAVA_HOME%;%JAVA_HOME%jrelib;

PATH:.;%JAVA_HOME%in;%CATALINA_HOME%in;

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


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

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

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

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

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

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

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

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

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

再来看看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下面的

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

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

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

已经启动成功了(记得把之前修改的内容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:WindowsSystem32下找到cmd.exe程序,右击“以管理员身份运行” 这样再输入上面的修改命令即可;

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





免责声明:文章转载自《Tomcat下载安装及常见问题解决办法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Java生成UUIDSQLSERVER排查CPU占用高的情况下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

NDK各个版本链接

ndk_r15c (July 2017) Windows 32-bit : https://dl.google.com/android/repository/android-ndk-r15c-windows-x86.zip Windows 64-bit : https://dl.google.com/android/repository/android-...

Intel Core Microarchitecture Pipeline

Intel微处理器近20年从Pentium发展到Skylake,得益于制作工艺上的巨大发展,处理器的性能得到了非常大的增强,功能模块增多,不过其指令处理pipeline的主干部分算不上有特别大的变化,更多的是为了提高指令的处理速度添加一些模块以及各模块的增强与优化。 本文会以Intel Core微处理器架构为例去了解Intel微处理器pipeline的各个...

springboot项目通过雪花算法生成19位数字id

建议: 雪花算法可以用来生成id也可以用来生成订单号。但是不常使用的表可以使用自增,常用的表使用雪花算法生成id。这样效果更好 数据库表Id类型设置为 bigint(否则下面的代码也会报错) 首先生成雪花id,这样虽然可以直接调用也就是通过new这个类的对象来生成,但是因为使用了spring框架,交给容器管理更好,所以下面就通过配置来实现将类注入到容器...

SQL Server bit数据类型

bit值保存为1/0,1代表true,0代表false读取数据库数据时,可以直接用bool型读取该字段,会直接转换为true/false 数据库表结构 CREATE TABLE [dbo].[BitTable]( [PKID] [int] IDENTITY(1,1) NOT NULL, [IsDelete] [bit] NULL, P...

X86/X64处理器体系结构及寻址模式

由8086/8088、x86、Pentium发展到core系列短短40多年间,处理器的时钟频率差点儿已接近极限。尽管如此,自从86年Intel推出386至今除了添加一些有关流媒体的指令如mmx/sse之外。其它新增的大多数指令都能够从最初的指令集中组合实现相同的功能,整个编程模型维持了约有20多年。 1. 处理器体系结构 1.1. 处理器简要结构 我们都...

(5) openssl speed(测试算法性能)和openssl rand(生成随机数)

1.1 openssl speed 测试加密算法的性能 支持的算法有: openssl speed [md2] [mdc2] [md5] [hmac] [sha1] [rmd160] [idea-cbc] [rc2-cbc] [rc5-cbc] [bf-cbc] [des-cbc] [des-ede3] [rc4] [rsa512] [rsa1024] [...