无法开始使用Apache Tomcat

3npbholx  于 2022-12-14  发布在  Apache
关注(0)|答案(2)|浏览(135)

I have started learning Servlets, so I downloaded the apache tomcat 7.x zip file(core--> zip) from here . I extracted it to my directory (D:), then I have just set up the JAVA_HOME System variable to a value of C:\Program Files\Java\jdk1.6.0 (My computer is running on windows 7 Home basic).
I have started up the server by startup.bat file in bin folder. When I just try to access localhost:8080 , it always says unable to connect on the browser. So I changed the port number to 9999 in server.xml and restarted it. It again says unable to connect in my browser. When I start up the server it shows the following on the command shell. Can someone please help me solve this issue and make my server work?
By observing the following on the command shell, I could only find this line which seems to give some indication of the problem: Failed to initialize component [Standard Server[8005]]. I still don't know what it has to do with the unable to connect..

Feb 24, 2013 4:58:02 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performanc
e in production environments was not found on the java.library.path: C:\Program
Files\Java\jdk1.6.0\bin;.;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\
Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\
Program Files\Java\jdk1.6.0\bin
Feb 24, 2013 4:58:02 PM org.apache.catalina.startup.Catalina load
SEVERE: Catalina.start
org.apache.catalina.LifecycleException: Failed to initialize component [Standard
Server[8005]]
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
        at org.apache.catalina.startup.Catalina.load(Catalina.java:633)
        at org.apache.catalina.startup.Catalina.load(Catalina.java:658)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)
Caused by: org.apache.catalina.LifecycleException: Failed to initialize componen
t [StandardService[Catalina]]
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
        at org.apache.catalina.core.StandardServer.initInternal(StandardServer.j
ava:814)
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
        ... 8 more
Caused by: org.apache.catalina.LifecycleException: Failed to initialize componen
t [StandardEngine[Catalina]]
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
        at org.apache.catalina.core.StandardService.initInternal(StandardService
.java:544)
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
        ... 10 more
Caused by: java.lang.NoSuchMethodError: java.util.concurrent.ThreadPoolExecutor.
allowCoreThreadTimeOut(Z)V
        at org.apache.catalina.core.ContainerBase.initInternal(ContainerBase.jav
a:1083)
        at org.apache.catalina.core.StandardEngine.initInternal(StandardEngine.j
ava:283)
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
        ... 12 more
Feb 24, 2013 4:58:02 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 532 ms
Feb 24, 2013 4:58:02 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-bio-9999"]
Feb 24, 2013 4:58:02 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["ajp-bio-8009"]
Feb 24, 2013 4:58:02 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
Feb 24, 2013 4:58:03 PM org.apache.catalina.startup.Catalina start
SEVERE: Catalina.start:
org.apache.catalina.LifecycleException: Failed to stop component [StandardServer
[8005]]
        at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:236)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:141)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:684)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)
Caused by: org.apache.catalina.LifecycleException: An invalid Lifecycle transiti
on was attempted ([before_stop]) for component [org.apache.catalina.deploy.Namin
gResources@1807ca8] in state [INITIALIZED]
        at org.apache.catalina.util.LifecycleBase.invalidTransition(LifecycleBas
e.java:409)
        at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:219)
        at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.j
ava:756)
        at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
        ... 8 more
Feb 24, 2013 4:58:03 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 11 ms
6ioyuze2

6ioyuze21#

我注意到堆栈跟踪的一点是:

Caused by: java.lang.NoSuchMethodError: java.util.concurrent.ThreadPoolExecutor.allowCoreThreadTimeOut(Z)V

查看ThreadPoolExecutor的Javadoc,可以发现allowCoreThreatTimeOut(boolean)方法是在Java 6中引入的。它在早期版本中并不存在。如果您在过时的JVM上运行为版本6以上设计的Java程序,就会发现上面的错误。
当你第一次启动tomcat的时候,你应该有这样的代码行:

Using CATALINA_BASE:   /home/nick/tools/apache-tomcat-6.0.35
Using CATALINA_HOME:   /home/nick/tools/apache-tomcat-6.0.35
Using CATALINA_TMPDIR: /home/nick/tools/apache-tomcat-6.0.35/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /home/nick/tools/apache-tomcat-6.0.35/bin/bootstrap.jar

查看JRE_HOME的目录,看看你得到了什么。也许你在Tomcat试图使用的某个地方安装了Java 5,尽管命令行看到了Java 6的安装。安装多个Java版本可能会导致混乱。

7gs2gvoe

7gs2gvoe2#

Tomcat需要JRE作为环境。然后启动Tomcat。或在“catalina.bat”文件中设置JRE_HOME的路径。找到附件屏幕截图

相关问题