在 Debian 上调试 WebLogic,一般可以从 日志、启动参数、JVM 调试、域配置、系统资源 几个层面来做。下面按常见场景整理。
java -version
uname -a
确认:
$DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log
或:
$DOMAIN_HOME/logs/<ServerName>.log
如果你用 startWebLogic.sh 启动:
nohup ./startWebLogic.sh > wl.out 2>&1 &
tail -f wl.out
Address already in use → 端口冲突ClassNotFoundException → classpath / jar 问题OutOfMemoryError → JVM 内存不足修改 setDomainEnv.sh 或启动参数:
-Debug
或:
-Dweblogic.debug.DebugSecuritySSL=true
更常用的是开启服务器 Debug:
-Dweblogic.StdoutDebugEnabled=true
编辑:
$DOMAIN_HOME/bin/setDomainEnv.sh
加入:
export JAVA_OPTIONS="$JAVA_OPTIONS -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n"
./startWebLogic.sh
访问:
http://<ip>:7001/console
可查看:
jps -l
jstack <pid>
jmap -heap <pid>
jstat -gc <pid>
Debian 常用:
sudo ufw status
sudo netstat -tunlp | grep 7001
开放端口:
sudo ufw allow 7001
sudo ufw allow 8453
| 问题 | 解决 |
|---|---|
| 启动慢 | 检查 /dev/random → 改用 /dev/urandom |
| 中文乱码 | 加 -Dfile.encoding=UTF-8 |
| 权限问题 | 不要用 root 跑 WebLogic |
| Debian 12 | 注意 GLIBC / JDK 兼容性 |
tail -f 日志STARTING 卡住jstack 看线程如果你能告诉我:
我可以直接帮你定位具体问题。