本文是远程调试 CentOS 系统自带的 tomcat 服务器的第二部分, 这篇文章中我们会部署一个 java web 到 tomcat 服务器
很多人可能已经习惯了自己下载安装 tomcat,使用 tomcat 自带的 catalina 查看输出, 在本地调试 tomcat 服务器,但是如果你是在远程服务器上,使用 yum 自带的 tomcat, 这时需要如何调试呢,之前我们已经搭建好了一台 tomcat 服务器,现在让我们把我们的 java web 程序部署到服务器上
本文是远程调试 CentOS 系统自带的 tomcat 服务器的第二部分
这里只是简单记录要点内容,详细的步骤请搜索 java servlet 教程
注意之前提到,CentOS 自带的 tomcat 版本是 7.0.76,对应的 jdk 版本是 1.8,请注意安装对应版本的 jdk
配置中需要包含 servlet 名称,及其对应的地址,如下片段所示
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>one.tricks.utils.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
编写 servlet 需要这个库文件,这个库文件可以在服务器的 usr/share/java 目录找到
我们新建一个 HelloServlet.java 来实现 HelloServlet,内容如下
package one.tricks.utils;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) {
try {
response.getWriter().println("Hello from Hello Servlet");
} catch (IOException exception) {
exception.printStackTrace();
}
}
}
输出文件的结构如下
准备好输出目录后,我们就可以方便地向 tomcat 部署了
我们使用了 rsync 来复制文件,当然 scp 也可以,首先我们在服务器安装 rsync
sudo yum install rsync -y
tomcat 中的 webapps 存储在服务器 /usr/share/tomcat/webapps ,所以我们需要在 webapps 下创建自己的目录
sudo mkdir utils
# 目录拥有者改为自己,之前为 root ,这样才可以用自己账户复制文件
sudo chown tricks.one:tomcat utils
之后我们就可以用以下指令来部署
# 注意端口号的指定方法
rsync -r -e 'ssh -p2202' utils/ tricks.one@localhost:/usr/share/tomcat/webapps/utils/
我们来用浏览器访问 http://localhost:8080/utils/hello, 正常的话,会返回我们在 HelloServlet 中写入的内容,所以我们可以在浏览器得到如下结果
现在我们已经把我们的 web 程序部署到了服务器上,接下来我们会尝试在服务器上远程调试我们的程序