Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed的解决方法

项目重新启动遇到Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed

问题:Caused by: org.apache.catalina.LifecycleException:

对于我一个工作不到一周的小白,来到公司电脑都没有关过,之前项目一直运行的好好地,也没有报什么错误,好巧不巧的,竟然遇到大楼停电(有高中晚自习停电的感觉,内心欢呼雀跃,可以提前下班了),带我的小姐姐给我说,没事,保存了就好,几分钟就来电了。果不其然来电了。

恢复正题

我重新启动项目,它给我报了好长的错误。
简单来说就是
Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
错误原因:端口被占用,所以启动失败。

org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-8980]]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
	at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
	at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:261)
	at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:198)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:300)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:162)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:386)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1242)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1230)
	at com.cyht.modules.Application.main(Application.java:19)
Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
	at org.apache.catalina.connector.Connector.startInternal(Connector.java:1020)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	... 13 common frames omitted
Caused by: java.net.BindException: Address already in use: 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.bind(NioEndpoint.java:219)
	at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1151)
	at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:591)
	at org.apache.catalina.connector.Connector.startInternal(Connector.java:1018)
	... 14 common frames omitted

解决方案:如下

1.我使用的是:关掉进程中的java进程,原因是该项目的端口还在,关掉再重新启动就可以了。
把java.eve关掉即可,可能存在多个,找到对应的即可,虽然我全删了,重启就行,哈哈哈。小仙女的暴力操作。
在这里插入图片描述

2.还有比较粗暴方式:直接修改端口号,重启项目。(我懒,毕竟这个项目端口号用来这么久,换了怕忘)

3.直接在命令行中操作:
先查找自己的进程号。
杀死这个端口号的进程,使用命令:taskkill /pid 进程号

虽然不想遇到这个问题,但是还是期盼一次长一点的停电?毕竟可以偷懒一小会。
停电归停电,还是要好好努力工作的
祝大家顺风顺水,运行顺利。
点个赞哦,小仙女在此谢过了。

猜你喜欢

转载自blog.csdn.net/weixin_43390321/article/details/113185753