在 Windows 上启动 Tomcat 时,我在 Catalina 日志文件中收到以下错误:
Sep 3, 2010 3:22:53 PM org.apache.catalina.startup.Catalina start
SEVERE: Catalina.start:
LifecycleException: service.getName(): "Catalina"; Protocol handler start failed: java.lang.Exception: Socket bind failed: [730048] Only one usage of each socket address (protocol/network address/port) is normally permitted.
at org.apache.catalina.connector.Connector.start(Connector.java:1138)
at org.apache.catalina.core.StandardService.start(StandardService.java:531)
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(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Sep 3, 2010 3:22:53 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 67604 ms
但是当我将端口号从 8080
更改为 9000
时,没有错误但是请求到 http://localhost:9000/给出 404 错误 请求的资源 (/) 不可用
。
我错过了什么吗?
最佳答案
一个应用程序正在使用 8080 端口。要找出是哪一个,请在 Windows 命令提示符下使用以下命令:
C:\>netstat -aon | findstr 0.0:8080
然后取最后一列中的数字(即进程ID)并找出任务管理器中的进程。如果命令没有输出任何内容,则表明您没有应用程序使用该端口。
关于tomcat启动报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3634707/