启动tomcat报StandardServer.await: create[8005]
今天发现朋友在启动tomcat时出现以下错误
2012-5-9 8:58:26 org.apache.coyote.http11.Http11AprProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
2012-5-9 8:58:26 org.apache.coyote.ajp.AjpAprProtocol start
INFO: Starting Coyote AJP/1.3 on ajp-8009
2012-5-9 8:58:26 org.apache.catalina.startup.Catalina start
INFO: Server startup in 4218 ms
2012-5-9 8:58:26 org.apache.catalina.core.StandardServer await
SEVERE: StandardServer.await: create[8005]:
java.net.BindException: Cannot assign requested address
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:373)
at org.apache.catalina.startup.Catalina.await(Catalina.java:647)
at org.apache.catalina.startup.Catalina.start(Catalina.java:607)
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.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
开始出现这错误,我的第一反应就是端口被占用,但经过反复查看端口并未被占用,日志中也可以看到 tomcat是已经启动了, 但不能绑定8005端口. 出现Cannot assign requested address,果断搜索了一番,查看很多都是因为端口被占用导致,但也有不是的,其中有一篇是说出现Cannot assign requested address的原因是localhost被路由到了别的机器.
在命令窗口
ping localhost
发现确实被路由到了别的机器.
这下就解决问题了,修改localhost让它重新指向本机地址 127.0.0.1vi /etc/hosts删除掉里面关于localhost的转向, 然后增加一行
127.0.0.1 localhost重新启动tomcat, 问题都解决.
相关推荐
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...
使用Tomcat 9.0.54-embed,你可以直接将它集成到你的Java应用程序中,通过编程方式控制Tomcat的启动、停止和管理Web应用程序。这减少了对单独服务器的需求,简化了开发和测试流程。 在部署Web应用时,你可以将WAR...
《Tomcat-server.xml配置详解》 Tomcat作为一款广泛应用的Java EE服务器,其核心配置文件`tomcat-server.xml`对于优化服务器性能、管理和监控服务至关重要。本文将详细解析`tomcat-server.xml`中的主要元素和属性,...
- Tomcat的启动过程涉及到Catalina、StandardServer、StandardService等关键组件。这些组件遵循Java的生命周期管理,如初始化、启动、停止和销毁等阶段。 - “conf”目录下的server.xml文件是Tomcat的主要配置文件...
- `bin`:包含启动和停止Tomcat的脚本。 - `webapps`:默认的应用部署目录,放置WAR文件或解压后的Web应用。 - `server`:包含服务器级别的配置和库。 - `shared`:存放可以被所有Tomcat实例共享的库。 在开始源码...
1. `org.apache.catalina.core.StandardServer`:服务器的主要入口点,负责启动和关闭Tomcat。 2. `org.apache.coyote.http11.Http11NioProtocol`:HTTP/1.1连接器的实现,使用NIO进行非阻塞I/O。 3. `org.apache....
4. StandardServer和StandardService:Tomcat的顶层容器,StandardServer是服务器的顶级容器,而StandardService则是用来部署连接器和引擎的。 5. Connector和Engine: Connector是负责接收请求并向客户端发送响应...
`bin`存放启动和停止服务器的脚本,`conf`存储配置文件,`lib`包含运行Tomcat所需的JAR文件,`logs`记录日志,`webapps`是部署Web应用的位置,`work`用于存放JSP编译后的类文件。 2. **核心组件**: - `Catalina`...
* deployOnStartup:如果此项设为 true,表示 Tomcat 服务器启动时会自动发布 appBase 下的 Web 应用。 Tomcat Server.xml 文件是 Tomcat 服务器的核心配置文件,我们可以通过配置这个文件来定义 Tomcat 服务器的...
- **Bootstrap**: Tomcat启动的入口点,负责初始化Catalina。 - **Catalina**: Tomcat的核心组件之一,主要负责管理整个服务器的生命周期。 - **StandardServer**: 表示一个完整的Tomcat实例,包括所有服务和服务器...
本文将基于提供的“tomcat启动的时序图”,详细解析Tomcat 5 的启动流程,旨在帮助读者深入理解Tomcat的工作机制。 #### 二、Tomcat 启动流程分析 ##### 1. 初始化阶段 - **Bootstrap 类**:启动过程始于`...
4. `Lifecycle`接口:所有Tomcat组件都实现了这个接口,以支持启动、停止、暂停和恢复等生命周期操作。 四、部署与启动流程 1. 解析`server.xml`配置文件:Tomcat通过`Catalina`类读取和解析配置,构建容器结构。 ...
className:实现了org.apache.catalina.Server接口的类名,标准实现类是org.apache.catalina.core.StandardServer类。 Port:Tomcat服务器监听用于关闭Tomcat服务器的命令(必须) Shutdown:发送到端口上用于...
在Tomcat 7的源码中,`getServer().init()`方法可能位于`StandardServer`类中,这个类实现了`Lifecycle`接口,管理服务器的生命周期状态。当调用`init()`方法时,Tomcat会执行以下主要步骤: 1. 加载全局JNDI资源:...
2. **创建Server**:通过`org.apache.catalina.core.StandardServer`类创建服务器实例,这是Tomcat的顶级容器。 3. **创建Service**:使用`org.apache.catalina.Service`接口创建服务,服务通常包含一个或多个...
Tomcat启动流程分析 组件的生命周期管理 用Lifecycle管理启动、停止、关闭 Lifecycle接口预览 几个核心方法 Server中的init方法示例 为啥StandardServer没有init方法 LifecycleBase中的init与...
Catalina包含一系列的类,如`org.apache.catalina.core.StandardServer`、`org.apache.catalina.core.StandardService`和`org.apache.catalina.core.StandardEngine`,它们构成了Tomcat服务器的层次结构。...
关键类如`Catalina`、`StandardServer`、`StandardService`和`StandardEngine`在启动和管理Tomcat的过程中起着重要作用。 4. **环境配置**: 配置Tomcat环境涉及设置JAVA_HOME环境变量,确保Java运行时环境可用。...
- `StandardServer.start`继续执行启动流程,触发启动事件。 #### 四、总结 通过上述对Tomcat源码的分析,我们可以更深入地理解Tomcat内部的工作原理和架构设计。特别地,了解Tomcat如何管理其组件的生命周期、...