问题场景
本项目目标运行平台是Linux系统,所以要将本地Idea中写好的Springboot程序打包部署到Linux虚拟机环境下进行调试。
使用Idea自带的maven进行打包(clean install),将Jar包通过Xftp传输到虚拟机对应文件夹下,在虚拟机终端通过 java -jar filename
命令运行jar包,运行启动正常:
但在浏览器中访问对应端口,出现了没有响应、等待超时的问题。
问题解决
通过查询网上博客、论坛,发现这种情况一般是由于虚拟机防火墙未开放对应端口的原因。于是尝试根据此原理进行问题溯源:
通过在终端内使用firewall-cmd --query-port=8081/tcp
命令,可以查询对应端口8081
是否开放:
可以发现响应为no,即未开放。
要开放8081端口,使用firewall-cmd --zone=public --add-port=8081/tcp --permanent
命令,再使用systemctl restart firewalld
命令重启防火墙,即可开放8081
端口,再使用上文的query命令查询,发现端口已开放:
再次使用POSTMAN和浏览器进行访问,已经没有出现超时问题了,可以继续进行调试。
至此,问题得到解决。