tomcat standardServer.await: create[8005]:

本文介绍了在启动Tomcat过程中遇到的“Cannot assign requested address”错误,并详细解释了解决方案,包括正确配置localhost映射和避免端口冲突。

1:今天遇到一个很变态的问题

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:359)
 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:642)
 at org.apache.catalina.startup.Catalina.start(Catalina.java:602)
 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)

开始还以为是端口占用,在server.xml中将<Server port="8005" shutdown="SHUTDOWN">改为其他端口,出现同样的错误。

翻了翻google出来邮件列表,里面说是因为localhost interface没有配置好的原因。
于是 ping localhost
直接去ping一个远程地址了,打开/etc/hosts,发现127.0.0.1后面的主机名由localhost被改成了给该机器分配的主机名,改回127.0.0.1 localhost.localdomain localhost,重启network后,启动tomcat,一切正常。

如果需要更改服务器的主机名和域名,需要修改/etc/sysconfig/network的HOSTNAME及DOMAINNAME,不能修改/etc/hosts中127.0.0.1对应的那条。

============================================

【C:\Windows\System32\drivers\etc\hosts文件中】

#127.0.0.1 localhost
192.168.1.126 localhost

刚开始我的localhost指向了192.168.1.126 也就是本机ip。

现在本机ip改了以后就没法启动tomcat了。

解决办法放开127.0.0.1 localhost 或者修改一下192.168.1.126 localhost



io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder - Error encountered during autoconfiguration. Closing partially configured components. OpenTelemetry Javaagent failed to start io.opentelemetry.sdk.autoconfigure.spi.ConfigurationException: Unexpected configuration error at io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder.build(AutoConfiguredOpenTelemetrySdkBuilder.java:424) at io.opentelemetry.javaagent.tooling.OpenTelemetryInstaller.installOpenTelemetrySdk(OpenTelemetryInstaller.java:34) at io.opentelemetry.javaagent.tooling.AgentInstaller.installBytebuddyAgent(AgentInstaller.java:121) at io.opentelemetry.javaagent.tooling.AgentInstaller.installBytebuddyAgent(AgentInstaller.java:101) at io.opentelemetry.javaagent.tooling.AgentStarterImpl.start(AgentStarterImpl.java:98) at io.opentelemetry.javaagent.bootstrap.AgentInitializer$1.run(AgentInitializer.java:53) at io.opentelemetry.javaagent.bootstrap.AgentInitializer$1.run(AgentInitializer.java:47) at io.opentelemetry.javaagent.bootstrap.AgentInitializer.execute(AgentInitializer.java:64) at io.opentelemetry.javaagent.bootstrap.AgentInitializer.initialize(AgentInitializer.java:46) at io.opentelemetry.javaagent.OpenTelemetryAgent.startAgent(OpenTelemetryAgent.java:57) at io.opentelemetry.javaagent.OpenTelemetryAgent.premain(OpenTelemetryAgent.java:45) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:386) at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:401) Caused by: java.io.UncheckedIOException: Could not create Prometheus HTTP server at io.opentelemetry.exporter.prometheus.PrometheusHttpServer.<init>(PrometheusHttpServer.java:82) at io.opentelemetry.exporter.prometheus.PrometheusHttpServerBuilder.build(PrometheusHttpServerBuilder.java:58) at io.opentelemetry.exporter.prometheus.internal.PrometheusCustomizerProvider.configurePrometheusHttpServer(PrometheusCustomizerProvider.java:47) at io.opentelemetry.exporter.prometheus.internal.PrometheusCustomizerProvider.lambda$customize$0(PrometheusCustomizerProvider.java:29) at io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder.lambda$mergeCustomizer$10(AutoConfiguredOpenTelemetrySdkBuilder.java:469) at io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder.build(AutoConfiguredOpenTelemetrySdkBuilder.java:350) ... 16 more Caused by: java.net.BindException: Address already in use at sun.nio.ch.Net.bind0(Native Method) at sun.nio.ch.Net.bind(Net.java:433) at sun.nio.ch.Net.bind(Net.java:425) at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) at sun.net.httpserver.ServerImpl.<init>(ServerImpl.java:100) at sun.net.httpserver.HttpServerImpl.<init>(HttpServerImpl.java:50) at sun.net.httpserver.DefaultHttpServerProvider.createHttpServer(DefaultHttpServerProvider.java:35) at com.sun.net.httpserver.HttpServer.create(HttpServer.java:130) at io.opentelemetry.exporter.prometheus.PrometheusHttpServer.<init>(PrometheusHttpServer.java:80) ... 21 more 03-Sep-2025 15:53:11.615 INFO [main] org.apache.catalina.core.StandardServer.await A valid shutdown command was received via the shutdown port. Stopping the Server instance. 请用帮我解决用tomcat启动java项目时这个问题
最新发布
09-04
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值