使用Eclipse对weblogic进行远程调试

一.环境说明

  weblogic12c,linux centOS 6.5,eclipse mars。

二.步骤

1.找到weblogic根目录下user_projects/domains/域名/bin/setDomainEnv.sh文件

2.找到这个文件后,可以使用nano setDomainEnv.sh命令对文件进行修改(vi编辑器亦可),加入红框中的代码

用“#”开头的是注释

debugFlag="true",这句就是shell命名中为变量debugFlag赋值,注意等号左右不要有空格

export debugFlag,这句是将debugFlag声明为环境变量,可以不需要

3.重启weblogic

ps -ef|grep java

红框中是进程的pid,拿到这个pid后

kill -9 26793

这样就杀掉了weblogic的进程(相当于关闭weblogic),之后启动weblogic

nohup ./startWeblogic.sh & tail -f nohup.out

执行后能看到weblogic在命令行中输出启动信息

4.设置eclipse

Name 是服务器的别名,随便叫什么都行

Project 是你要调试的工程名

Host 是服务器的ip

Port 默认是8453,除非你改了weblogic的调试端口,不然就是这个(注意开启linux的防火墙设置,不然tcp/ip连接不上)

至此,我们就能通过在本地eclipse中打断点来调试远程weblogic上的代码了。这对我们sit测试来说非常的省时省力。因为出现bug时不需要重新部署工程,能直接在本地调试。

 三.补充说明

很多blog里说,当开启了debug模式后,能在命令行里看到输出Listening for transport dt_socket at address:8453,,,可是,每次启动时输出的大量信息,要去找这句话真的比较难,反正我是一次都没看到过。

所以我想到了另一个方法:

修改startWeblogic.sh文件(nano startWeblogic.sh)

 加上了红框中的代码后,就能清晰的知道是否开启了debug模式。这也是为什么我要将setDomainEnv.sh中的debugFlag声明为环境变量。

/*** 2016-04-13补充 ***/

我竟然看到了启动信息,在这里:

/*** 2016-04-13补充 ***/

四.总结

其实weblogic早就为我们准备好了debug模式的参数设置,它只需要一个标识来启动它,所以我们要将debugFlag="true",本质上来说,就是shell中为一个变量赋值。

另外,linux下shell命令和windows下批处理命令是不一样,所以赋值语句也不一样,大家需要区分。

祝大家sit测试顺利!

 

posted @ 2016-04-07 16:21  向东方  阅读(12214)  评论(0编辑  收藏  举报