在 Debian 上“调试 JSP 代码”通常分两层理解:服务器运行环境调试 和 IDE 远程断点调试。下面按常见场景给你一个完整思路。
JSP 必须运行在 Servlet 容器 中,常见有:
sudo apt update
sudo apt install tomcat9
默认目录:
/var/lib/tomcat9/webapps//var/lib/tomcat9/logs//etc/tomcat9/启动:
sudo systemctl start tomcat9
sudo systemctl enable tomcat9
tail -f /var/lib/tomcat9/logs/catalina.out
JSP 编译错误、异常堆栈都会在这里。
编辑:
/etc/tomcat9/web.xml
确保:
<init-param>
<param-name>development</param-name>
<param-value>true</param-value>
</init-param>
或在 conf/context.xml 中:
<Context reloadable="true" />
<%
System.out.println("debug: " + request.getParameter("id"));
%>
编辑 Tomcat 启动脚本:
/etc/default/tomcat9
添加:
JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000"
重启:
sudo systemctl restart tomcat9
确认端口:
ss -tlnp | grep 8000
localhost8000注意:JSP 断点需要在 生成的 Java 文件 上打(IDE 通常已支持)
安装:
配置 launch.json:
{
"type": "java",
"request": "attach",
"name": "Attach to Tomcat",
"hostName": "localhost",
"port": 8000
}
rm -rf /var/lib/tomcat9/work/*
sudo systemctl restart tomcat9
<%@ page contentType="text/html;charset=UTF-8" %>
WEB-INF/libWEB-INF/classes✅ Debian + Tomcat9
✅ IntelliJ IDEA(远程调试)
✅ tail -f catalina.out
如果你愿意,可以告诉我:
我可以直接给你一份“可复制用”的配置。