Ubuntu下tomcat无法启动解决办法
tomcat启动不了的原因
Tomcat启动不了的原因(实用收藏+更新)
如果在控制面板-“管理工具”-“服务”中启动Tomcat时,提示“本地计算机上的Apache Tomcat 服务启动后又停止了。一些服务自动停止,如果他们没什么可做的,例如“性能日志和警报”服务”,使得Tomcat启动不起来的可能的原因是:
1。由于在tomcat里JVM没有配好,他默认的是批向c:\program file\Java下的那一个,如果你确认这没有删掉,JVM指向你自己安装的jdk\jre试试。
我以前在学校里也常常碰到这些问题,当时一般是重新安装tomcat.
后来慢慢得开始找问题了,发现其实还真就是上面所说的几点启动不了,后来我发现是第2点出的错.
幸亏我以前对server.xml备份过,只要换回原来的server.xml就行了.
至于原因,我还要进行分析.因为当时是做虚拟主机才对这个配置文件进行过修改的.
检查错误的方法我也看过一些,就写下来吧.
一是查看log文件,这个是每个维护人员必须养成的习惯,
二是查看端口占用,我是用fport看的,一个单文件程序,很方便实用.
三是运行命令行:"tomcat6.exe run",不过要cmd中在"D:\projects\software\Tomcat 6.0\bin"下运行,查看错误.
环境变量的话一般重新查看过就行了.
还有就是版本匹配问题,这个可以随便搜下,很多的配置方案都会写出java版本与tomcat版本.对应就行了.
2。改写server.xml文件出错,如果改写出错也会导致服务启动不起来。 3。设置的网络端口被占用,如IIS; 4。Tomcat和JDK版本对应问题,tomcat 5.0以上的版本,jdk也必须是1.5以上。 5。环境变量配置错误。
Ubuntu下配置Tomcat服务器以及设置自动启动的方法
Ubuntu下配置Tomcat服务器以及设置⾃动启动的⽅法 既然是Ubuntu,那就要利⽤好“新⽴得软件包管理器”了。
1.Tomcat需要jdk的⽀持,所以先说⼀下jdk的安装,已经安装好了jdk的可以直接看第2条。
1.1安装jdk 在新⽴得中搜索“sun-java”,安装最新的jdk,⽐如“sun-java6-jdk”,然后点击应⽤就⾃动安装完成了。
1.2配置jdk环境变量 安装是⾃动的,但是配置需要⾃⼰动⼿了。
1.2.1修改⽤户环境变量 $ vi /home/fancy(你的⽤户名)/.bashrc 在 .bashrc⽂件中加⼊: export JAVA_HOME="/usr/lib/jvm/java-6-sun" export CLASSPATH="$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib" export PATH="$PATH:$JAVA_HOME/bin" 1.2.2修改所有⽤户的环境变量 $sudo vi /etc/profile 在该⽂件中加⼊: export JAVA_HOME="/usr/lib/jvm/java-6-sun" export CLASSPATH="$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib" export PATH="$PATH:$JAVA_HOME/bin" 2.Tomcat安装和配置,这⾥是关键了 2.1通过新⽴得安装Tomcat 这个就不多说了,搜索"tomcat"选定相应软件包然后应⽤就是了。
2.2Tomcat的配置 这是重点中的重点。
$sudo vi /etc/profile 加⼊: export CATALINA_HOME="/usr/share/tomcat5.5" 注意: a.⽹上有些地⽅说是设置TOMCAT_HOME,这是不对的; b.⽹上还有说需要修改conf/server.xml与web.xml,在ubuntu中利⽤新⽴得安装时这都是不需要的(当然,以后需要的时候可以改,但在第⼀次安装时不是必须的)。
LINUX系统造成处理TOMCAT异常的原因和解决方法
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,是开发和调试JSP 程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。
实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
但是它也有异常出现,今天小编就要告诉大家Linux处理Tomcat异常的方法。
一、 PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。
为什么会内存益出这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space 区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。
这种错误常见在web服务器对JSP进行pre compile的时候。
改正方法:-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m二、在tomcat中redeploy时出现outofmemory的错误。
出错原因1、使用了proxool,因为proxool内部包含了一个老版本的cglib.2、log4j,最好不用,只用common-logging3、老版本的cglib,快点更新到最新版。
tomcat开机自启服务无法启动的解决办法
tomcat开机⾃启服务⽆法启动的解决办法
在项⽬部署维护时,出现项⽬⽆法运⾏的问题,查找原因后发现tomcat服务开机⾃启。
不同的机器中出现了两种情况。
第⼀种:⼿动启动服务可以,则说明是⽤户对tomcat的操作权限不够。
解决办法:找到tomcat的安装⽬录,右键——》属性——》安全——》编辑——》添加
⽂本框中输⼊everyone——》确定
选择everyone,下⾯权限都勾选上,应⽤,确定,重启系统,tomcat服务⾃启动成功,问题解决。
第⼆种:服务⼿动启动也⽆法启动。
依赖的jre的路径错误,改为已安装的正确的路径即可。
报错如下:
因为服务启动的本质就是运⾏tomcat/bin/Tomcat8.exe,这时候查看直接运⾏Tomcat8.exe也是⽆法成功的,这时候就要看⼀下它的配置,即Tomcat8w.exe,双击Tomcat8w.exe打开配置,在Java模块中发现引⽤的jre路径不存在,这就是问题的根源所在,在你的java安装路径中找到jvm.dll,配置到下⾯,应⽤,确定。
再运⾏Tomcat8.exe成功启动tomcat则说明问题已解决。
其实还有第三种情况(我没有遇到):服务启动了,但⼜被防⽕墙关闭了。
Tomcat服务无法启动的问题的解决方法
Tomcat服务⽆法启动的问题的解决⽅法去年下半年公司就决定投⼊⼈⼒物⼒"跟风"做⼤数据⽅向的研究并应⽤到后续项⽬中,于是乎,我们也得熟悉下Java才⾏了。
先弄个JavaEE的开发环境再说吧。
装JDK、JRE,其实JDK下⾯已经有JRE了,如果在服务器上的话,只需装JRE;然后配置环境变量:新建:JAVA_HOME:D:\Java\jdk1.7.0_51新建:CLASS_PATH:.;%JAVA_HOME%\lib编辑:PATH:在最前⾯加上 %JAVA_HOME%\bin; 接着装Tomcat,startup.bat、shutdown.bat都正常,然后想把压缩版的Tomcat的启动和关闭做成Windows服务来处理,执⾏service.bat install提⽰服务创建成功,但是启动服务却失败了,系统⽇志提⽰:我之前台式机上的Windows 2003系统没啥问题,怎么到了现在这Win7系统的⼩本上就这样了呢?先分析下,既然可以正常调⽤service.bat,也就是环境变量的配置是没有问题的,对⽐下2个操作系统,似乎⽬前最有可能的就是安装时候的权限问题。
先卸载掉已经安装过的服务service.bat remove,然后"以管理员⾝份运⾏" cmd.exe,切换到service.bat所在的⽬录执⾏service.bat install重新安装Tomcat服务。
HoHo,这下可以正常启动和关闭了。
因为是开发环境,所以我们可以配置⼀个超级⽤户admin ,使其能够通过"http://localhost:8080/"来管理Tomcat。
进⼊Tomcat根⽬录下的conf⽂件夹,打开"tomcat-users.xml"进⾏编辑:复制代码代码如下:<tomcat-users><user username="admin" password="admin" roles="manager-gui,admin-gui"/></tomcat-users>重启Tomcat后,就可以使⽤admin来管理Tomcat了。
为什么我的tomcat启动不起来
为什么我的tomcat启动不起来⽬录现象: 端⼝占⽤:⽂件拼写错误:现象: tomcat安装好了,准备部署Web项⽬了,启动tomcat,发现没有反应。
虽然显⽰了Tomcat started。
但是这个 started不等同于 success,当我们打开浏览器访问8080端⼝的时候,却发现我们的tomcat并没有被启动。
⽹上⼤多的教程都是教我们去查端⼝占⽤,或者是配置jdk环境。
但其实应该从原因上进⾏分析,这样才能有效的推导出结果(我最开始的错误就是有⼀个有错误的war包,导致tomcat启动不起来,这种如果按⽹上的教程是发现不出来的) tomcat的logs⽬录下,存放着它所有的⽇志,在tomcat启动时的⽇志,是存储在catalina.***.log中的,***代表⽇期,我们可以找到当前⽇期的catalina.***.log,通过⽇志信息来定位问题端⼝占⽤:这个时候我们可以先查出来占⽤端⼝的线程:lsof -nP -i:8080然后再杀掉该线程即可:kill -9 pid⽂件拼写错误:通过错误信息我们可以看出,这个问题产⽣的原因是⽂件第⼆⾏存在拼写错误,我们打开⽂件,发现⽂件的第⼀⾏有⼀个空格,删掉⾸⾏空格即可。
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="/xml/ns/javaee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_4_0.xsd"version="4.0"metadata-complete="true"><description> Servlet Example. </description><display-name> MyServlet Example </display-name><request-character-encoding>UTF-8</request-character-encoding><servlet><servlet-name>myServlet</servlet-name><servlet-class>MyServlet</servlet-class></servlet><servlet-mapping><servlet-name>myServlet</servlet-name><url-pattern>/myservlet</url-pattern></servlet-mapping></web-app>到此这篇关于为什么我的tomcat启动不起来的⽂章就介绍到这了,更多相关tomcat启动不起来内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
Ubuntu下tomcat无法启动解决办法
Ubuntu下tomcat无法启动解决办法
Ubuntu下tomcat无法启动困扰了三天,总是提示Neither the JA V A_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
JA V A_HOME=/home/treesky/jdk1.5.0_16
CLASSPATH=.:/home/treesky/jdk1.5.0_16/lib
JRE_HOME=/home/treesky/jdk1.5.0_16/jre
PATH=$PATH:/home/treesky/jdk1.5.0_16/bin
其实最终的原因就是环境变量没有生效。
// 进入root帐户在普通用户也可以
sudo -s
//用编辑器打开.bashrc文件
gedit .bashrc 在普通用户下注意加上sudo
//在最后一行添加如上面的环境变量(文件位置根据自己的实际情况)
//重启生效。
//给tomcat文件夹及所有文件赋予权限777
chmod 777 /opt/tomcat -R
//开启tomcat服务
/opt/tomcat/bin/startup.sh
如果在出现类似问题打印一下环境变量看看是否正确如果正确重新按照上面的方法赋予权限!
echo $JA V A_HOME
echo $JRE_HOME
echo $PATH
root直接打普通加上sudo echo $JA V A_HOME
厚德载物,大道若弦...。
tomcat启动失败--解决方法
怎么处理Server Tomcat v7.0 Server at localhost failed to start.处理方式有以下几种:1、端口被占用。
2、启动时间不够。
3、eclipse引发的问题。
一.端口被占用这种情况一般都是你的tomcat端口(默认端口8080)被占用了。
你可以通过浏览器访问(http://127.0.0.1:8080)。
若确认是因为端口被占用引起的问题后,我们就来处理该问题了。
一种方法是将被占用的端口的服务停掉,使其不备占用。
二种方法是修改tomcat的端口了,在Eclipse中双击tomcat,修改其端口号。
具体如下图所示:双击它然后修改它(我这里已经将它修改为了8089了)2.启动时间不够。
这是由于服务启动的时间相对较长,而设置的timeout时间太短而引起的问题。
你只需要将timeout 时间设置长一些就可以正常启动了。
(只需要双击Timeouts就出现如上图界面了,我将原先的45s 改为了50s)我的Exlipse就是因为这个原因。
3. eclipse引发的问题。
如果不属于前面的两种情况,那么可能是eclipse 在管理时出现的问题。
对于这种情况,我们一般通过以下四中方式来解决:一种:清理tomcat二种:移除应用并清理tomcat三种:删除server 并重建(Delete:删除;New 可以重建)四种:就是重启电脑。
总之,要逐项排查,对于这个问题:Server Tomcat v7.0 Server at localhost failed to start. 以上方法希望对你帮助!!!!!。
Tomcat启动失败的解决方法
Tomcat启动失败的解决方法
1.JDK版本和Tomcat版本不匹配,通常原因是JDK版本过低
例如Tomcat5.5搭配JDK6.0
此种情况会出现启动Tomcat的时候,加载信息在屏幕上停留几秒就消失,Tomcat没有任何反应。
解决方法:
(1)将JDK目录下的bin文件夹中的msvcr71.dll 复制到tomcat的BIN文件夹中。
(2)系统缺少msvcr71.dll文件!
从别的电脑上cope其添加到 <windows>/system32 目录下即可!
2.JDK环境变量设置错误
常见的,例如JAVA_HOME没设置,或者设置错误, JAVA_HOME后不能含有; 否则会影响到后面classpath和path的设置
3. 8080端口被占用
Tomcat所使用的默认为8080端口,如果它被别的服务程序占用,例如oracle等,则需要另外指派端口给Tomcat
方法:打开Server.xml,找到
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
把其中port后的8080改为别的端口,例如8088,9090,
然后重新启动Tomcat,启动成功即可。
(4)
终止进程:Javax.exe。
Tomcat启动不了一定要好好看Console中的提示
Tomcat启动不了⼀定要好好看Console中的提⽰在启动Tomcat的时候出现错误,百分之九⼗九点九的错误都是⾃⼰的代码出现错误,就是说肯定是⾃⼰写的代码出现了错误,找错误中的 caused by中的提⽰,或者是其他错误提⽰,当然这些都是你清除缓存重启服务器或者重启电脑之后的事了,如果真是缓存或者其他不是⾃⼰代码错误的事只能看你处理的顺序了。
例如下⾯这个Console中的提⽰的错误就是我⽤了两个相同的别名在不同的映射中,红字标记出来的就是这个问题的所在(起码我是这样认为的,并且改好的):严重: A child container failed during startjava.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/04login]]at java.util.concurrent.FutureTask.report(FutureTask.java:122)at java.util.concurrent.FutureTask.get(FutureTask.java:188)at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)at java.util.concurrent.FutureTask.run(FutureTask.java:262)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at ng.Thread.run(Thread.java:745)Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/04login]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)... 6 moreCaused by: ng.IllegalArgumentException: The servlets named [servlet.CookieServlet] and [servlet.GetCookieServlet] are both mapped to the url-pattern [/getcookie] which is not permittedat org.apache.tomcat.util.descriptor.web.WebXml.addServletMappingDecoded(WebXml.java:317)at org.apache.tomcat.util.descriptor.web.WebXml.addServletMapping(WebXml.java:310)at org.apache.catalina.startup.ContextConfig.processAnnotationWebServlet(ContextConfig.java:2374)at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2056)at org.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1941)at org.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1935)at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1146)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:773)at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:307)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5262)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 6 more三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.ContainerBase startInternal严重: A child container failed during startjava.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]at java.util.concurrent.FutureTask.report(FutureTask.java:122)at java.util.concurrent.FutureTask.get(FutureTask.java:188)at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.startup.Catalina.start(Catalina.java:641)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)at java.util.concurrent.FutureTask.run(FutureTask.java:262)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at ng.Thread.run(Thread.java:745)Caused by: org.apache.catalina.LifecycleException: A child container failed during startat org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 6 more三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.Catalina start严重: The required Server component failed to start so Tomcat is unable to start.org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)at org.apache.catalina.startup.Catalina.start(Catalina.java:641)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 7 moreCaused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 9 moreCaused by: org.apache.catalina.LifecycleException: A child container failed during startat org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 11 more三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol pause信息: Pausing ProtocolHandler ["http-nio-8080"]三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol pause信息: Pausing ProtocolHandler ["ajp-nio-8009"]三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.StandardService stopInternal信息: Stopping service Catalina三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy信息: Destroying ProtocolHandler ["http-nio-8080"]三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]ng.NullPointerExceptionat .NioEndpoint.releaseCaches(NioEndpoint.java:315)at .NioEndpoint.unbind(NioEndpoint.java:491)at .AbstractEndpoint.destroy(AbstractEndpoint.java:896)at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.startup.Catalina.start(Catalina.java:645)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy信息: Destroying ProtocolHandler ["ajp-nio-8009"]三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy严重: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]ng.NullPointerExceptionat .NioEndpoint.releaseCaches(NioEndpoint.java:315)at .NioEndpoint.unbind(NioEndpoint.java:491)at .AbstractEndpoint.destroy(AbstractEndpoint.java:896)at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)at org.apache.catalina.startup.Catalina.start(Catalina.java:645)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)三⽉ 08, 2019 12:46:30 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to'org.eclipse.jst.jee.server:04login' did not find a matching property.三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Server version:Apache Tomcat/8.0.53三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Server built: Jun 29 2018 14:42:45 UTC三⽉ 08, 201912:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Server number: 8.0.53.0三⽉ 08, 2019 12:46:30 下午org.apache.catalina.startup.VersionLoggerListener log信息: OS Name: Windows 8.1三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: OS Version: 6.3三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Architecture: amd64三⽉ 08, 2019 12:46:30 下午org.apache.catalina.startup.VersionLoggerListener log信息: Java Home: C:\Program Files\Java\jdk1.7.0_80\jre三⽉ 08, 2019 12:46:30 下午org.apache.catalina.startup.VersionLoggerListener log信息: JVM Version: 1.7.0_80-b15三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListenerlog信息: JVM Vendor: Oracle Corporation三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: CATALINA_BASE:D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息:CATALINA_HOME: D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListenerlog信息: Command line argument: -Dcatalina.base=D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53三⽉ 08, 2019 12:46:30 下午org.apache.catalina.startup.VersionLoggerListener log信息: Command line argument: -Dcatalina.home=D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Command line argument: -Dwtp.deploy=D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53\wtpwebapps三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.VersionLoggerListener log信息: Command line argument: -Djava.endorsed.dirs=D:\tomcat\apache-tomcat-8.0.53-windows-x64\apache-tomcat-8.0.53\endorsed三⽉ 08, 2019 12:46:30 下午org.apache.catalina.startup.VersionLoggerListener log信息: Command line argument: -Dfile.encoding=GBK三⽉ 08, 2019 12:46:30 下午org.apache.catalina.core.AprLifecycleListener lifecycleEvent信息: The APR based Apache Tomcat Native library which allows optimal performance in production environmentswas not found on the java.library.path: C:\ProgramFiles\Java\jdk1.7.0_80\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;D:\app\Dexter\product\11.2.0\dbhome_1\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C Files\Java\jdk1.7.0_80\bin;C:\Program Files\Java\jdk1.7.0_80\jre\bin;;C:\Program Files (x86)\NVIDIACorporation\PhysX\Common;C:\Users\Dexter\AppData\Local\Microsoft\WindowsApps;;D:\vscode\Microsoft VS Code\Microsoft VS Code\bin;.三⽉ 08, 2019 12:46:30 下午org.apache.coyote.AbstractProtocol init信息: Initializing ProtocolHandler ["http-nio-8080"]三⽉ 08, 2019 12:46:30 下午 .NioSelectorPoolgetSharedSelector信息: Using a shared selector for servlet write/read三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol init信息: Initializing ProtocolHandler["ajp-nio-8009"]三⽉ 08, 2019 12:46:30 下午 .NioSelectorPool getSharedSelector信息: Using a shared selector for servlet write/read三⽉ 08, 201912:46:30 下午 org.apache.catalina.startup.Catalina load信息: Initialization processed in 922 ms三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.StandardServicestartInternal信息: Starting service Catalina三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.StandardEngine startInternal信息: Starting Servlet Engine: ApacheTomcat/8.0.53三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.ContainerBase startInternal严重: A child container failed duringstartjava.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/04login]]at java.util.concurrent.FutureTask.report(FutureTask.java:122)atjava.util.concurrent.FutureTask.get(FutureTask.java:188)at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)atorg.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)atorg.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)atjava.util.concurrent.FutureTask.run(FutureTask.java:262)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at ng.Thread.run(Thread.java:745)Caused by:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/04login]]atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)... 6 moreCaused by: ng.IllegalArgumentException: The servlets named [servlet.CookieServlet] and[servlet.GetCookieServlet] are both mapped to the url-pattern [/getcookie] which is not permittedatorg.apache.tomcat.util.descriptor.web.WebXml.addServletMappingDecoded(WebXml.java:317)atorg.apache.tomcat.util.descriptor.web.WebXml.addServletMapping(WebXml.java:310)atorg.apache.catalina.startup.ContextConfig.processAnnotationWebServlet(ContextConfig.java:2374)atorg.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2056)atorg.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1941)atorg.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1935)atorg.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1146)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:773)atorg.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:307)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5262)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 6 more三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.ContainerBase startInternal严重: A child container failed during startjava.util.concurrent.ExecutionException:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]atjava.util.concurrent.FutureTask.report(FutureTask.java:122)at java.util.concurrent.FutureTask.get(FutureTask.java:188)atorg.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.startup.Catalina.start(Catalina.java:641)atsun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)atorg.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)Caused by:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)atorg.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)at java.util.concurrent.FutureTask.run(FutureTask.java:262)atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at ng.Thread.run(Thread.java:745)Caused by: org.apache.catalina.LifecycleException: A child container failed during startatorg.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 6 more三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.startup.Catalina start严重: The required Server component failed to start so Tomcat is unable to.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)atorg.apache.catalina.startup.Catalina.start(Catalina.java:641)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)atorg.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)Caused by:org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)atorg.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 7 moreCaused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)atorg.apache.catalina.core.StandardService.startInternal(StandardService.java:441)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 9 moreCaused by: org.apache.catalina.LifecycleException: A child container failed during startat org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)atorg.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)... 11 more三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol pause信息: Pausing ProtocolHandler ["http-nio-8080"]三⽉ 08, 2019 12:46:30 下午org.apache.coyote.AbstractProtocol pause信息: Pausing ProtocolHandler ["ajp-nio-8009"]三⽉ 08, 2019 12:46:30 下午 org.apache.catalina.core.StandardService stopInternal信息: Stopping service Catalina三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy信息: Destroying ProtocolHandler ["http-nio-8080"]三⽉ 08, 2019 12:46:30下午 org.apache.coyote.AbstractProtocol destroy严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]ng.NullPointerExceptionat.NioEndpoint.releaseCaches(NioEndpoint.java:315)at .NioEndpoint.unbind(NioEndpoint.java:491)at.AbstractEndpoint.destroy(AbstractEndpoint.java:896)at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)atorg.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.startup.Catalina.start(Catalina.java:645)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)atorg.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)三⽉ 08, 2019 12:46:30 下午 org.apache.coyote.AbstractProtocol destroy信息: Destroying ProtocolHandler ["ajp-nio-8009"]三⽉ 08, 2019 12:46:30 下午org.apache.coyote.AbstractProtocol destroy严重: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]ng.NullPointerExceptionat.NioEndpoint.releaseCaches(NioEndpoint.java:315)at .NioEndpoint.unbind(NioEndpoint.java:491)at.AbstractEndpoint.destroy(AbstractEndpoint.java:896)at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)atorg.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)atorg.apache.catalina.startup.Catalina.start(Catalina.java:645)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)atorg.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)。
tomcat报错:虚拟内存不足,启动失败;页面文件太小,无法完成操作
tomcat报错:虚拟内存不足,启动失败;页面文件太小,无法
完成操作
服务器上安装了tomcat和jdk后,tomcat总是启动失败,错误日志显示:虚拟内存不足,启动失败,或者是:Error 0x800705af: 页面文件太小,无法完成操作。
后一种错误其实和前一种是一样的,只是不同的电脑系统可能显示不同。
解决办法:增大虚拟内存
步骤:
1、右键点【我的电脑】-【属性】-【高级】选项卡,
2、在【性能】栏内点【设置】-继续点【高级】选项卡,
3、在【虚拟内存】栏内点【更改】-弹出【虚拟内存】对话框,就可以设置了。
4、单选【自定义大小】,在【初始大小】里设置1024,在【最大值】里设置2048(不能超过32位操作系统的内存寻址范围——4GB)。
最后点一下【设置】可生效。
如有必要,可重启电脑。
建议将虚拟内存移动到除C盘之外的其它盘,例如D盘。
以减轻对系统盘的压力。
方法:仍在【虚拟内存】对话框,点击C盘卷标,单选【无分页大小】。
再选D盘卷标,单选【自定义大小】,设置【初始大小】和【最大值】即可。
虚拟内存最大值一般设置为物理内存的2倍。
tomcat启动失败的常见原因
tomcat启动失败的常见原因根据不同情况,笔者碰到过的有以下⼏种情况:1. 运⾏tomcat的启动⽂件startup.bat,弹出⿊窗⼝,直接闪退。
这种情况⼀般都是没有配置JAVA_HOME导致的,配置jdk如果没有使⽤JAVA_HOME的⽅式配置环境变量,就会出这种问题2. 启动后,停留⼀段时间,打印⼀些⽇志,然后窗⼝关闭。
这种情况⼀般是端⼝号冲突了。
由于端⼝号只会⽀持⼀个程序运⾏,如果tomcat的默认端⼝号被其他程序占⽤,就会导致冲突。
解决这种问题的⼿段分为两种,第⼀,关闭占⽤默认端⼝号的程序(不太建议),第⼆,修改tomcat使⽤的默认端⼝号。
关闭占⽤默认端⼝号的程序如果选择结束掉占⽤了默认端⼝号的程序,如何查看是哪个程序占⽤了端⼝号呢? 在cmd命令输⼊netstat -aov本地地址最右侧就是已经被使⽤的端⼝号,找到默认端⼝号8080,记下最右侧的数字(PID的值)接着打开任务管理器,找到和PID值匹配的进程,将其关闭即可(默认情况下,任务管理器不会显⽰PID,需要⼿动开启PID显⽰)修改tomcat使⽤的默认端⼝号在TomCat⽂件⽬录下找到conf⽂件下的server.xml⽂件修改上图的8080即可。
3. 运⾏tomcat后,tomcat很快就启动完成了,但是⽇志打印了⼀⼤堆严重。
这种情况,似乎是因为tomcat的权限不⾜导致的,需要提升tomcat的权限,只需要修改tomcat中的config⽂件夹的权限,将权限改成完全控制,如下图(要注意,⼀定要修改电脑当前登录⽤户下的权限,否则没⽤,在下图中的组或⽤户名中找到当前登录的⽤户。
)发⼀下,这种情况报的错误信息。
信息: Loaded APR based Apache Tomcat Native library 1.1.14.2009-5-25 7:55:48 org.apache.catalina.core.AprLifecycleListener init信息: APR capabilities: IPv6 [false], sendfile [true], accept filters [false], random [true].2009-5-25 7:55:50 org.apache.coyote.http11.Http11AprProtocol init信息: Initializing Coyote HTTP/1.1 on http-80802009-5-25 7:55:50 org.apache.coyote.ajp.AjpAprProtocol init信息: Initializing Coyote AJP/1.3 on ajp-80092009-5-25 7:55:50 org.apache.catalina.startup.Catalina load信息: Initialization processed in 3594 ms2009-5-25 7:55:50 org.apache.naming.NamingContext lookup警告: Unexpected exception resolving referencejava.io.IOException: Cannot rename original file to C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/tomcat-users.xml.old at ers.MemoryUserDatabase.save(MemoryUserDatabase.java:582)at ers.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:104)at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:140)at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)at org.apache.naming.NamingContext.lookup(NamingContext.java:793)at org.apache.naming.NamingContext.lookup(NamingContext.java:140)at org.apache.naming.NamingContextBindingsEnumeration.nextElementInternal(NamingContextBindingsEnumeration.java:113)at org.apache.naming.NamingContextBindingsEnumeration.next(NamingContextBindingsEnumeration.java:71)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:137)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:109)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:81)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)at org.apache.catalina.core.StandardServer.start(StandardServer.java:703)at org.apache.catalina.startup.Catalina.start(Catalina.java:578)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:585)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2009-5-25 7:55:50 org.apache.catalina.mbeans.GlobalResourcesLifecycleListener createMBeans严重: Exception processing Global JNDI Resourcesjavax.naming.NamingException: Cannot rename original file to C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/tomcat-users.xml.oldat org.apache.naming.NamingContext.lookup(NamingContext.java:805)at org.apache.naming.NamingContext.lookup(NamingContext.java:140)at org.apache.naming.NamingContextBindingsEnumeration.nextElementInternal(NamingContextBindingsEnumeration.java:113)at org.apache.naming.NamingContextBindingsEnumeration.next(NamingContextBindingsEnumeration.java:71)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:137)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:109)at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:81)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)at org.apache.catalina.core.StandardServer.start(StandardServer.java:703)at org.apache.catalina.startup.Catalina.start(Catalina.java:578)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:585)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2009-5-25 7:55:50 org.apache.catalina.core.StandardService start信息: Starting service Catalina2009-5-25 7:55:50 org.apache.catalina.core.StandardEngine start信息: Starting Servlet Engine: Apache Tomcat/6.0.182009-5-25 7:55:50 org.apache.naming.NamingContext lookup警告: Unexpected exception resolving referencejava.io.IOException: Cannot rename original file to C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/tomcat-users.xml.old at ers.MemoryUserDatabase.save(MemoryUserDatabase.java:582)at ers.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:104)at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:140)at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)at org.apache.naming.NamingContext.lookup(NamingContext.java:793)at org.apache.naming.NamingContext.lookup(NamingContext.java:153)at erDatabaseRealm.start(UserDatabaseRealm.java:253)at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1037)at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)at org.apache.catalina.core.StandardService.start(StandardService.java:516)at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)at org.apache.catalina.startup.Catalina.start(Catalina.java:578)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:585)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2009-5-25 7:55:50 erDatabaseRealm start严重: Exception looking up UserDatabase under key UserDatabasejavax.naming.NamingException: Cannot rename original file to C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/tomcat-users.xml.oldat org.apache.naming.NamingContext.lookup(NamingContext.java:805)at org.apache.naming.NamingContext.lookup(NamingContext.java:153)at erDatabaseRealm.start(UserDatabaseRealm.java:253)at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1037)at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)at org.apache.catalina.core.StandardService.start(StandardService.java:516)at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)at org.apache.catalina.startup.Catalina.start(Catalina.java:578)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:585)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2009-5-25 7:55:50 org.apache.catalina.startup.Catalina start严重: Catalina.start:LifecycleException: No UserDatabase component found under key UserDatabaseat erDatabaseRealm.start(UserDatabaseRealm.java:261)at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1037)at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)at org.apache.catalina.core.StandardService.start(StandardService.java:516)at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)at org.apache.catalina.startup.Catalina.start(Catalina.java:578)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:585)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2009-5-25 7:55:50 org.apache.catalina.startup.Catalina start信息: Server startup in 299 ms。
项目启动tomcat失败的几种可能原因和解决方法(小结)
项⽬启动tomcat失败的⼏种可能原因和解决⽅法(⼩结)⽬录1、java配置路径有问题2、项⽬未添加tomcat驱动3、项⽬中的web.xml中配置的servlet的名称写错,tomcat⽆法识别4、端⼝被占⽤1、java配置路径有问题请配置好jdk路径,具体参考java路径的配置吧。
2、项⽬未添加tomcat驱动(⼀般提⽰The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path属于这⼀类)解决⽅法:保证已经装了tomcat的情况下,eclipse中选择对应项⽬右键build path ->Configure build path -> Java build path->选择Libraries ->点击右⽅Add Library... ->Server Runtime ->选择⾃⼰的tomcat服务器->Finish3、项⽬中的web.xml中配置的servlet的名称写错,tomcat⽆法识别(⼀般控制台提⽰java.util.concurrent.ExecutionException属于这种问题)解决⽅法:检查⾃⼰配置的servlet名称和路径是否正确。
4、端⼝被占⽤⼀般由于上⼀次⾮正常关闭tomcat或eclipse导致,( Port 8080 .............. is already in use)解决⽅法:①修改端⼝号(当然不建议这么做) Tomcat根⽬录/conf/Server.xml中修改,这⾥就不提了吧.....②关闭被占⽤的端⼝进程:到dos窗⼝(计算机开始⾥的查找中输⼊cmd)中输⼊netstat -ano|findstr 8080(8080是被占⽤的端⼝号,哪个被占⽤输⼊哪个)回车后可以看到有正在使⽤的进程再输⼊taskkill /pid 8080 /f (这⾥的8080是正在使⽤的进程信息中最后⼀个数字编号)回车后会显⽰已结束进程,然后重新启动tomcat即可。
Tomcat启动失败的问题排查与解决
Tomcat启动失败的问题排查与解决前⾔最近在某应⽤更新代码后部分机器发布失败,发布失败的机器上Tomcat⼀直没有启动成功,⽇志卡在Deploying web application,重启数次之后仍然是⼀样的情况。
所以进⾏排查问题,下⾯记录了所有的排查过程,需要的朋友们可以参考学习。
排查过程1. Tomcat启动线程卡住下⽂中Tomcat启动线程代指线程名为localhost-startStop-$id的线程。
使⽤jstack打印出Tomcat的线程堆栈:jstack `jps |grep Bootstrap |awk '{print $1}'` > jstack.log从jstack.log⾥⾯可以看到线程localhost-startStop-1处于WAITING状态,堆栈如下:"localhost-startStop-1" #26 daemon prio=5 os_prio=0 tid=0x00007fe6c8002000 nid=0x3dc1 waiting on condition [0x00007fe719c1e000]ng.Thread.State: WAITING (parking)at sun.misc.Unsafe.park(Native Method)- parking to wait for <0x00000007147be150> (a work.client.FutureResult)at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429)at java.util.concurrent.FutureTask.get(FutureTask.java:191)at xxx.HeartBeatContainer.invoke(HeartBeatContainer.java:183)at xxx.HeartBeatContainer.registry(HeartBeatContainer.java:130)对应的代码如下:final ResponseFuture<XxxMessage<Result>> future = responseFutureFactory.newResponseFuture(request);channel.writeAndFlush(request);XxxMessage<Result> response = future.get();线程⼀直卡在future.get()没有返回。
tomcat下服务启动失败原因
tomcat下服务启动失败原因Tomcat启动成功,输⼊⽹址后可以显⽰⼩黄猫界⾯,但是在Tomcat下的服务却启动不成功,显⽰404(以Jenkins为例,运⽤多种⽅式查看原因)注:1、单启动Tomcat服务是可以启动成功的。
若满⾜以上2点⼦服务依旧不能启动成功,可使⽤如下⼏种⽅式检查1、查看webapps下的war包是否正常解压,所没有解压成功,可⼿动解压在webapps下,然后重启Tomcat即可2、查看Tomcat所⽤端⼝是否被占⽤,若是被占⽤可修改端⼝号(若是启动后背Java.exe所占⽤属于正常情况,因为启动后Tomcat会⼀直使⽤Java环境)修改端⼝⽅式:2)若是被占⽤,则在Tomcat的根(安装)⽬录下,找到conf⽂件夹,进⼊conf⽂件夹,在⾥⾯找到Server.xml⽂件3)打开Server.xml⽂件,在⽂件中找到如下⽂本并进⾏修改并保存(共需要修改3处位置),保存后重启Tomcat即可3、若是本地配置多个版本的Java环境也可影响到服务的启动(不同版本的Java环境可启动不同版本的Tomcat)1)查看JVM版本在Tomcat/bin下,双击version.bat脚本可查看详细信息,但是由于默认脚本不显⽰运⾏过程,故需要修改下DOS脚本1.打开version.bat,将⾸⾏的@echo off修改成echo on,表⽰在控制台显⽰运⾏过程2.在脚本末尾添加pause函数,表⽰脚本运⾏完之后不⾃动关闭cmd,可显⽰在桌⾯上3.修改完之后保存脚本,再次双击version.bat脚本及可查看详细信息,其中JVM Version表⽰Tomcat服务使⽤的JVM版本2)如果JDK不是想要的版本,则可在Tomcat/bin下找到setclasspath.bat脚本,⼿动修改其中的JRE路径(需要修改两处)打开setclasspath.bat脚本,找到set "JRE_HOME=%JAVA_HOME%",把%JAVA_HOME%替换成本机需要使⽤的其他安装的jre路径,如set "JRE_HOME=D:\Program Files\Java\jre1.8.0_181",然后重启即可(所使⽤的jre需配置环境变量)4、若以上三种⽅式皆没有问题,则根据Tomcat打印出的log查看具体原因1)可在命令⾏输⼊java -jar jenkins.war查看报错原因(具体报错原因可⾃⾏报错)2)查看Tomcat/logs下的catalina.log,主要是记录tomcat启动时候的信息,在⾥⾯可以看到启动的JVM参数以及操作系统等⽇志信息问题显⽰为Jenkins war包的问题。
tomcat启动不了一闪而过怎么办?tomcat一闪而过无法启动现象的解决方法
tomcat启动不了⼀闪⽽过怎么办?tomcat⼀闪⽽过⽆法启动现象的解决⽅法 tomcat启动⼀闪⽽过怎么办成为了许多刚接触tomcat开发环境⼯作者的⼀个⼤问题,许多⽤户朋友都不知道是因为什么问题导致出现这种情况,马上点击查看tomcat⼀闪⽽过⽆法启动解决⽅法来解决您现在出现的问题吧。
Apache Tomcat 8.5.31 32位/64位官⽅免费版类型:服务器其它⼤⼩:9.41MB语⾔:简体中⽂时间:2018-05-07查看详情 - 1.⾸先要搞明⽩启动不起来的原因。
⽅法是在命令⾏下,运⾏startup.bat⽂件,这样程序就不会⼀闪⽽过,⽽会将启动不起来的原因打印到窗⼝上。
在命令⾏下启动tomcat的⽅法读者应该都很清楚,⼤体就是:cmd启动命令⾏窗⼝->通过cd命令到tomcat的bin⽬录下->运⾏startup.bat。
- 2.通过命令⾏的提⽰看到,这是因为电脑上没有配置JAVA_HOME或者JRE_HOME导致的。
那么下⾯添加上JAVA_HOME和JRE_HOME。
具体步骤为计算机->属性->环境变量,然后添加系统变量; - 3.添加完JAVA_HOME 和JRE_HOME 两个系统变量之后,在将这两个变量放到path 系统变量中,⽅法是,在path 变量值的后⾯直接追加 【;%JAVA_HOME%;%JRE_HOME%】注意!分号是环境变量的分割符号,不可少。
- 4.设置好变量之后,关掉之前的命令⾏窗⼝,重启⼀个新的命令⾏窗⼝,再次运⾏startup.bat命令,问题解决。
以上就是⼩编为⼤家带来的tomcat⼀闪⽽过⽆法启动现象的解决⽅法了,希望可以帮助到⼤家,⼤家如果还有疑问的话,可以在下⽅的评论框内给我们留⾔哦。
我们会尽⾃⼰所能的为⼤家解答。
谢谢⼤家⼀如既往的⽀持,也请⼤家继续关注的后续教程和软件。
Ubuntu安装配置tomcat9教程
Ubuntu安装配置tomcat9教程Ubuntu配置tomcat9,供⼤家参考,具体内容如下⼀.下载tar.gz压缩⽂件这⾥下载core版本的。
⼆.把压缩包复制到/usr/tomcat⽂件夹下(这⾥的tomcat⽂件夹是⾃⼰建的)解压压缩⽂件sudo tar -zxvf apache-tomcat-9.0.0.M18.tar.gz三.设置环境变量按照百度的教程:使⽤gedit打开startup.sh⽂件,添加Java的jdk与jre(前提是已经安装jdk与jre)sudo gedit /usr/tomcat/apache-tomcat-9.0.0.M18/bin/startup.sh在⽂件末尾添加如下代码:JAVA_HOME=/usr/jvm/jdk1.8.0_121JRE_HOME=$JAVA_HOME/jrePATH=$PATH:$JAVA_HOME/bin:$JRE_HOMECLASSPATH=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarTOMCAT_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18前边4句是java的环境变量,最后⼀句是tomcat的环境变量然⽽出现了如下问题(找不到JAVA_HOME):Neither the JAVA_HOME nor the JRE_HOME environment variable is definedAt least one of these environment variable is needed to run this program⾸先百度搜的⼏乎清⼀⾊的都使是这个办法:但是我按照这个办法修改之后还是不⾏,于是爬墙出去搜了下,解决办法如下:试过之后,果然有效,如图,输⼊:sudo ./bin/startup.sh修正后我发现两种办法都能正确开启tomcat成功:1.在startup.sh中添加:JAVA_HOME=/usr/java/jdk1.8.0_121JRE_HOME=${JAVA_HOME}/jrePATH=${JAVA_HOME}/bin:$PATHCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libCATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18这⾥要注意:1).以上代码要添加到startup.sh⽂件中最后⼀句(exec “PRGDIR"/"EXECUTABLE” start “$@”)的上⾯2).还要在shutdown.sh中添加以上代码(环境变量)才能正确关闭tomcat,要不然执⾏关闭命令的时候还会提⽰(这⾥⼜折腾了⼗⼏分钟才整明⽩)Neither the JAVA_HOME nor the JRE_HOME environment variable is definedAt least one of these environment variable is needed to run this program2.在setenv.sh中添加:export JAVA_HOME=/usr/java/jdk1.8.0_121export CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18这种办法相对于第⼀种办法有⼀个好处就是:只需要添加这⼀次,⽆论开启还是关闭tomcat都不会找不到JAVA_HOME。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ubuntu下tomcat无法启动解决办法
Ubuntu下tomcat无法启动困扰了三天,总是提示Neither the JA V A_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
JA V A_HOME=/home/treesky/jdk1.5.0_16
CLASSPATH=.:/home/treesky/jdk1.5.0_16/lib
JRE_HOME=/home/treesky/jdk1.5.0_16/jre
PATH=$PATH:/home/treesky/jdk1.5.0_16/bin
其实最终的原因就是环境变量没有生效。
// 进入root帐户在普通用户也可以
sudo -s
//用编辑器打开.bashrc文件
gedit .bashrc 在普通用户下注意加上sudo
//在最后一行添加如上面的环境变量(文件位置根据自己的实际情况)
//重启生效。
//给tomcat文件夹及所有文件赋予权限777
chmod 777 /opt/tomcat -R
//开启tomcat服务
/opt/tomcat/bin/startup.sh
如果在出现类似问题打印一下环境变量看看是否正确如果正确重新按照上面的方法赋予权限!
echo $JA V A_HOME
echo $JRE_HOME
echo $PATH
root直接打普通加上sudo echo $JA V A_HOME
厚德载物,大道若弦...。