SpringBoot 重复运行时 TomCat 端口被占用

首先这个问题要分为两种情况
第一种:普通启动,改端口就行(主要是为了不用8080端口)

在配置文件 application.properties或者xxx.yml中改掉端口号,以 application.properties为例,加入下面代码即可

server.port=8888

然后重启即可,但如果重启还是被占用,请看第二种

第二种:第二次启动springBoot的入口文件 xxxApplication.java时被占用

方案1:临时解决

首先,出现这种情况是因为,你第一次启动的进程没有关闭,此时你再启动,则会再追加开启一次相同进程,注意我说的是追加,不是替换或者重启,此时你只要关掉前一个就好,以MyEclipse为例,再console点击停止即可,如图:

1.remove launch
在这里插入图片描述

2.stop
在这里插入图片描述

经过以上两步即可临时解决

方案2:完美解决

在本地项目里的lib目录下(没有可以自己创建)引入 springloaded-1.2.8.RELEASE.jar ,然后修改run的配置

该jar包可在maven仓库官网搜索下载:https://mvnrepository.com

在这里插入图片描述
在这里插入图片描述

Program arguments 或者 VM arguments其一:键入以下指令

-javaagent:.\lib\springloaded-1.2.8.RELEASE.jar -noverify

点击应用,然后重新启动即可。

注:如果此方法不行,可把热部署方案添加进去再试,一般都没问题

最后附加热部署方案,每次改完代码,就不用重启了,刷新页面就好

附热部署方案

在pom.xml文件中引入spring-boot-devtoolsspringloaded,然后重启项目于即可

这两个依赖可在maven仓库官网找到:https://mvnrepository.com

<!-- 热部署依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional> <!-- 这个需要为 true 热部署才有效 -->
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>springloaded</artifactId>
</dependency>

重新对maven 进行update即可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值