错误信息:
org.apache.catalina.LifecycleException: Protocol handler start failed at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:263) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:195) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:297) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:163) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:552) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:744) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:391) at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) at com.uminton.AccountServerApplication.main(AccountServerApplication.java:18) Caused by: java.net.BindException: Cannot assign requested address: bind 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 org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:230) at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:213) at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:585) at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) ... 14 common frames omitted 2020-03-12 10:55:15.011 INFO o.apache.catalina.core.StandardService : Stopping service [Tomcat] 2020-03-12 10:55:15.028 INFO ConditionEvaluationReportLoggingListener : Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2020-03-12 10:55:15.034 ERROR o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: The Tomcat connector configured to listen on port 8182 failed to start. The port may already be in use or the connector may be misconfigured. Action: Verify the connector's configuration, identify and stop any process that's listening on port 8182, or configure this application to listen on another port.
主要看最下面的错误大致意思是(google翻译~~):
描述:
配置为监听端口8081的Tomcat连接器启动失败。端口可能已经在使用中,或者连接器可能配置错误。
行动:
验证连接器的配置,识别并停止在端口8081上侦听的任何进程,或者将此应用程序配置为在另一个端口上侦听。
解决端口被占用方法;
方法一:
1.打开cmd命令窗口 输入如下指令查看所有端口和PID
netstat -ano
2.找到对应的端口对应的PID 输入指令找到对应的进程
netstat -nao|findstr 8182
3.杀掉该进程 再次启动就OK啦
taskkill /f /t /im java.exe #或者 javaw.exe
方法二:
跟方法一的步骤一一样:先查找除对应被占用端口的PID
然后打开任务管理器,查找对应PID进程,结束任务即可
方法三:简单粗暴
打开application.properties更改端口,用一个没被占用的端口 server.port=8080
补充:
如果你application.properties配置了 server.address 配置的ip和本机ip不一样,也会报上面的错误
(刚换了ip忘了改,改了端口,被坑了好久~~)