远程调试docker构建的weblogic
环境信息
OSType:
CentOS Linux 7 (Core) x86_64 3.10.0-957.21.3.el7.x86_64
DockerVersion:
19.03.8
Mirrors:
http://ovfftd6p.mirror.aliyuncs.com/
http://registry.docker-cn.com/
http://docker.mirrors.ustc.edu.cn/
http://hub-mirror.c.163.com/
WeblogicVersion:
12.2.1.3 - developer
部署Weblogic
法1:使用官方镜像
镜像地址:dockerhub
构建之后要运行weblogic
,需要使用官方提供的示例,参考上篇文章中间部分:利用Docker手动构建WebLogic镜像。
法2:利用Dockfile手动构建
Oracle
的Dockerfile
仓库地址:Github。
使用方法参考上篇文章即可。
获取Weblogic相关源文件
在远程调试之前,需要先拿到weblogic
源码或源文件(JAR包)。从镜像中就可以取出来,方法如下:
确定weblogic容器运行
找到服务器主目录
使用命令docker exec -it weblogic /bin/bash
进入到容器当中,一般情况下Oracle
主目录存储在环境变量ORACLE_HOME
当中,在这个目录下找到最大的那个文件夹一般就是我们要的东西。
我这里是在/u01/oracle/wlserver
,退出容器,使用命令docker cp weblogic:/u01/oracle/wlserver ./
将其从容器中复制出来。
除了需要weblogic
的东西之外,后面为了防止出错,建议直接使用容器里的jdk
,jdk
主目录在环境变量JAVA_HOME
中:
使用命令docker cp weblogic:/usr/java/jdk-8 ./wlserver/
将其拷贝到wlserver
目录中,待会直接打包。
然后为了之后IDEA
调试不缺依赖,我们在wlserver
下创建一个test
目录,使用命令find ./wlserver -name *.jar -exec cp {} ./wlserver/test/ \;
将所有的jar
文件复制到一起。
然后使用zip
命令将目录打包:zip -r wlserver.zip ./wlserver
,然后sz wlserver.zip
将其从虚拟机中搞出来。
IDEA调试配置
使用IDEA
打开wlserver
文件夹,结构如下:
然后在项目设置里,把test
目录加载到库里:
最后,根据图的指示添加运行配置(Remote),IP和端口填正确,如下图:
都弄好之后,点击调试按钮,出现以下日志信息说明成功:
下断点方法
成功之后,test
目录下的所有jar
包都可以展开,找到自己要调试的类,比如com.weblogic.iiop.jar!\weblogic\iiop\ConnectionManager.class
。
在左边行号旁边下断点即可,程序运行到这里会自动中断。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?