柔情似水 发表于 2015-1-18 11:16:01

JAVA教程之Eclipse远程调试Weblogic运转的源代码

恰恰证明了java的简单,要不怎么没有通过c/c++来搞个这种框架?web|源代码  看过很多远程调试的例子,年夜多半都是针对tomcat大概jboss服务器的,很少能搜刮到weblogic服务器的远程调试例子和文章,前些天在项目开辟的时分实验了一下,感到非常得不错,拿出来跟人人分享一下,不外我要多罗嗦几句。
  远程调试的优点:我们如今开辟的形式年夜多是本机用eclipse集成source办理情况,集成ant的编译情况,用weblogic插件集成运转情况,基础上一个eclipse又当爹又当妈的,如许的优点就是开辟情况设置会合,一般的程序员只需按步骤做就能够了,开辟步骤复杂,对全部项目是一件功德。那末站在一般的程序员角度?甚么也没有学到,就是在仿照罢了,假如本机的硬件设置假如很低的话,意味着开辟效力的下降,同时一点开辟兴趣都没有,就是在完成营业罢了,是很难懂得工具自己的特性。远程调试的优点就是把会合的设置分离开来,让资本分派在分歧的呆板上,下降本机资本的利用。换一句话,就是将运转情况和开辟情况的完全的分别出来,关于那些及时对应和守旧的程序员来讲,几乎就是一个福音,用户情况一旦呈现甚么bug的话,你团体能够在最短的工夫内再现和调试,而不必运转本机的测试情况。
  远程调试的筹办常识:利用Java平台调试架构,JavaPlatformDebuggerArchitecture,简称JPDA,详细的能够参照API文档内里的ToolSupport内里的JavaPlatformDebuggerArchitecture(JPDA)(我的jdk文档是1.42的,假如是其余版本,你搜刮一下jpda就能够找到相干的材料)。换一句话,我们借助于这个平台来debug使用程序,实在我们也会看到eclipse内里也有debug的,那末它们是否是一回事呢?我却是搜刮了一下,基础上eclpse的调试就是利用和扩大这个工具平台的,只不外远程调试必要我们本人手动设置罢了,而你在当地调试的时分,那些设置都是插件帮你完成的,你自己就是一个利用者罢了,以是没有体贴的那末多。
  详细的完成步骤:设置服务器的启动参数,假如熟习weblogic的话,会发明weblogic更多是用java完成的。关于我们来讲,假如是windows用户的话,你只必要修正domain
  内里的startWebLogic.cmd批处置文件,你在这个文件里设置一个体系变量,
  口语就是你增加一行setJAVA_DEBUG=-Xdebug-Xnoagent-Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n。如许是不敷的,你还必要将这句话增加到%JAVA_HOME%injava%JAVA_VM%%MEM_ARGS%%JAVA_OPTIONS%-Dweblogic.Name=%SERVER_NAME%-Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE%-Djava.security.policy="%WL_HOME%serverlibweblogic.policy"weblogic.Server里
  修正后的了局%JAVA_HOME%injava%JAVA_VM%%JAVA_DEBUG%%MEM_ARGS%%JAVA_OPTIONS%weblogic.Name=%SERVER_NAME%-Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE%-Djava.security.policy="%WL_HOME%serverlibweblogic.policy"weblogic.Server
  如许做的目标就是让你启动weblogic的同时,把JPDA也启动起来,至于你的weblogic的实践启动参数是否是和我一样,我就不晓得了,归正这么写的目标就是让JPDA的参数也加载到你的启动参数列内外,启动weblogic的同时也将JPDA启动起来,详细的修正仍是依据本人的实践情形来定,可是目标是不异的。
  设置客户端:这边利用的客户端工具天然就是eclipse了,本来你在当地的工程设置坚持稳定,换一句话说你也必需把本人的工程import到你的eclipse,利用和操纵上和当地的没有任何的变更。可是你必要创建一个remotejavaApplication,让后设置一下就能够了(惋惜我不会在jr里上穿图片,不然抓一下图,一看就分明了)。复杂地说,在你的debug里有javaapplication,javaapplet,junit等等,固然那边也有remotejavaApplication,你新建一个就能够了,复杂设置一下远程主机的地点和监听端口(就是你在服务器设置历程指定的4000),选择一下你的工程,然后给这个remotejavaApplication起个名字之类。
  必要注重的中央:在你debug的时分,必定要包管你当地的source和服务器上运转的情况上的跑的class分歧,换一句话说必定要实时更新source,不然debug的了局就是稀里糊涂的。另有你把本人的source编译后的jar包大概文件夹放到服务器上,必定要每次都公布一遍,假如你偶然健忘一次,那末固然你服务器上跑的class和当地的source分歧,因为你没有公布,那末debug的了局,也纷歧致了,以是坚持分歧性是两重的寄义。
  小结
  实在设置远程debug其实不坚苦,基础的道理很复杂,服务器端在启动的服务器的同时,也把JPDA明白的启动起来,分派一个端标语,那末你在客户端只需毗连上JPDA服务(sun称为工具平台,我团体称为服务)便能测试了,给我的感到更像是一个socket编程完成的服务。至于其他的服务器的远程调试?道理必定是一样的,只不外你必要依据它们供应的文档,响应的修正远程调试的参数罢了。同时声明一下,我团体的程度也是很一样平常,在熟悉和履历上也有必定的完善,假如本贴子有甚么不当和不合错误的中央,请人人指出和配合进修。

恰恰证明了java的简单,要不怎么没有通过c/c++来搞个这种框架?

精灵巫婆 发表于 2015-1-19 14:28:18

是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

莫相离 发表于 2015-1-24 12:48:46

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

透明 发表于 2015-2-1 12:33:55

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

山那边是海 发表于 2015-2-6 20:14:58

设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧

不帅 发表于 2015-2-11 06:35:29

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

因胸联盟 发表于 2015-2-20 14:19:10

Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

飘飘悠悠 发表于 2015-2-23 21:49:24

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

再见西城 发表于 2015-3-7 10:19:04

当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?

若天明 发表于 2015-3-9 07:58:34

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

金色的骷髅 发表于 2015-3-16 21:10:23

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

分手快乐 发表于 2015-3-23 01:03:22

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
页: [1]
查看完整版本: JAVA教程之Eclipse远程调试Weblogic运转的源代码