前言

发布项目其实是导出成war包直接传到webapps,idea提供了一个更为便捷的方法,可以直接将tomcat配置到远程服务器,在intellij上“稍加”配置就可以直接发布到远程的tomcat服务器了。

环境

本地环境:

  • OS:Windows 11
  • tomcat10.1.40
  • java 17.0.9
  • Idea 2023.2.4

服务器环境:

  • OS:CentOS7.6
  • tomcat 9.0.26
  • java 1.8.0_231

Idea 的帮助文档中有这样一句话:

When working with a remote server, the same server version must be available locally.

使用远程服务器时,必须在本地提供相同的服务器版本。

修改服务器 tomcat 的启动脚本catalina.sh

通常我们启动 tomcat 时,本质上都是运行的 statup.sh,但是现在需要远程部署,启动脚本要换成 catalina.sh。

打开服务器 tomcat 安装目录下的 bin 目录,里面有一个脚本文件 catalina.sh,打开这个脚本文件后,在开头的地方加入下面这段代码:

export CATALINA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.rmi.port=1099 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Djava.rmi.server.hostname=服务器ip地址"

修改完成后来到 catalina.sh 所在的目录,使用下面这个命令运行该脚本: ./catalina.sh run

#可以用 jps 命令查看
[root@VM-8-14-centos bin]# jps
26498 Bootstrap
26678 Jps
#查看1099端口
[root@VM-8-14-centos bin]# netstat -tlano | grep 1099
tcp6       0      0 :::1099                 :::*                    LISTEN      off (0.00/0/0)

tomcat 运行起来之后,我们在本地浏览器中输入 http://<IPAddress>:8080 进行访问,可以看到熟悉的 tomcat 主页

扩展:  ./catalina.sh run   启动的话会导致当前终端被阻塞,并且关闭终端后无法继续后台运行,因此命令改为:

./catalina.sh run > /dev/null 2>&1 &    或者   ./catalina.sh start

本地 IDEA 配置

点击编辑配置,添加一个Tomcat远程

配置相关的信息

点击上图中 Host 右边的 … ,会出现 部署 对话框:

点击上图中 SSH配置 右边的 … ,会出现 部署 对话框:

点击部署页面中的映射

点击配置页面中的部署

运行项目

若看到控制台输出以下内容,则说明配置远程 tomcat 成功!

本地代码如下

在浏览器中访问服务器的 tomcat,就可以打开本地编写的项目了。

分类: Tomcat

0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注