idea发布项目到远程tomcat
idea添加tomcat的时候,既可以用本地tomcat,也可以用远程tomcat。之前都是直接用的本地tomcat,今天来试一下远程的。
下面记录一下所有的流程。
配置服务器的tomcat
说明:假设192.168.0.1为服务器ip,大家可以根据实际情况修改。
修改环境变量
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.0.1" export CATALINA_OPTS
保存文件后,输入
source /etc/profile
修改立即生效
启动tomcat
进入tomcat的bin目录 ./startup.sh
配置本地连接参数
idea版本为2020年1月的,不同版本界面可能不一样
添加远程tomcat
RootPath 为远程tomcat的webapps目录 如 /usr/local/tomcat9/webapps等等
点击圈出来的引号,跳到下面的界面
配置好可以点击Test Connection测试一下
点击 apply ok
回到最初的界面
mapped as 同样是webapps目录
下面的配置与本地一样
点击保存,即可运行。
Unable to connect to the ip:1099
如果按照上面的正确配置了,并且SSH configuration那一步也连接成功,说明问题可能有以下几个,否则就是连接服务器的密码错了。
(1)服务器1099端口没开放
(2)服务器1099端口被占用
(3)环境变量配置有误。(我就是这个原因,可以把tomcat关闭,再启动,如果环境变量错误,会直接报出来。建议核对一下第一步中的环境变量配置是否正确)
SpringBoot发布
这种远程发布的方式就是把webapp下的项目直接传输到远程,SpringBoot有两种打包方式,这里建议用war包。
在启动类所在的包加一个,应该就可以直接像ssm那样部署了
public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(RemoteApplication.class); } }