<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Eclipse遠程調試Weblogic運行的源代碼(轉載 )

    Eclipse遠程調試Weblogic運行的源代碼(轉載 )


      看過許多遠程調試的例子,大多數都是針對tomcat或者jboss服務器的,很少能搜索到weblogic服務器的遠程調試例子和文章,前些天在項目開發的時候嘗試了一下,感覺十分得不錯,拿出來跟大家分享一下,不過我要多羅嗦幾句。

      遠程調試的好處:我們現在開發的模式大多是本機用eclipse集成source管理環境,集成ant的編譯環境,用weblogic插件集成 運行環境,基本上一個eclipse又當爹又當媽的,這樣的好處就是開發環境配置集中,普通的程序員只要按步驟做就可以了,開發步驟簡單,對整個項目是一 件好事。那么站在普通的程序員角度?什么也沒有學到,就是在模仿而已,如果本機的硬件配置如果很低的話,意味著開發效率的降低,同時一點開發樂趣都沒有, 就是在實現業務而已,是很難了解工具本身的特點。遠程調試的好處就是把集中的配置分散開來,讓資源分配在不同的機器上,降低本機資源的使用。換一句話,就 是將運行環境和開發環境的徹底的分離出來,對于那些實時對應和保守的程序員來說,簡直就是一個福音,用戶環境一旦出現什么bug的話,你個人可以在最短的 時間內再現和調試,而不用運行本機的測試環境。

      遠程調試的準備知識:使用Java 平臺調試架構,Java Platform Debugger Architecture,簡稱JPDA,具體的可以參照API文檔里面的Tool Support里面的Java Platform Debugger Architecture (JPDA)(我的jdk文檔是1.42的,如果是別的版本,你搜索一下jpda就可以找到相關的資料)。換一句話,我們借助于這個平臺來debug應用 程序,其實我們也會看到eclipse里面也有debug的,那么它們是不是一回事呢?我倒是搜索了一下,基本上eclpse的調試就是使用和擴充這個工 具平臺的,只不過遠程調試需要我們自己手動配置而已,而你在本地調試的時候,那些配置都是插件幫你完成的,你本人就是一個使用者而已,所以沒有關心的那么 多。

      具體的實現步驟:配置服務器的啟動參數,如果熟悉weblogic的話,會發現weblogic更多是用java實現的。對于我們來說,如果是windows用戶的話,你只需要修改domain

      里面的startWebLogic.cmd批處理文件,你在這個文件里設置一個系統變量,

      白話就是你添加一行set JAVA_DEBUG=-Xdebug -Xnoagent -Xrunjdwp: transport=dt_socket,address=4000,server=y,suspend=n。這樣是不夠的,你還需要將這句話添加到% JAVA_HOME%"bin"java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%"server"lib"weblogic.policy" weblogic.Server里

      修改后的結果%JAVA_HOME%"bin"java %JAVA_VM% %JAVA_DEBUG% %MEM_ARGS% %JAVA_OPTIONS%weblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%"server"lib"weblogic.policy" weblogic.Server

      這樣做的目的就是讓你啟動weblogic的同時,把JPDA也啟動起來,至于你的weblogic的實際啟動參數是不是和我一樣,我就不知道 了,反正這么寫的目的就是讓JPDA的參數也加載到你的啟動參數列表里,啟動weblogic的同時也將JPDA啟動起來,具體的修改還是根據自己的實際 情況來定,但是目的是相同的。

      配置客戶端:這邊使用的客戶端工具自然就是eclipse了,原先你在本地的工程配置保持不變,換一句話說你也必須把自己的工程import到 你的eclipse,使用和操作上和本地的沒有任何的變化。但是你需要建立一個remote java Application,讓后配置一下就可以了(可惜我不會在jr里上穿圖片,否則抓一下圖,一看就明白了)。簡單地說,在你的debug里有java application,java applet,junit等等,當然那里也有remote java Application,你新建一個就可以了,簡單配置一下遠程主機的地址和監聽端口(就是你在服務器配置過程指定的4000),選擇一下你的工程,然后 給這個remote java Application起個名字之類。

      需要注意的地方:在你debug的時候,一定要保證你本地的source和服務器上運行的環境上 的跑的class一致,換一句話說一定要及時更 新source,否則debug的結果就是莫名其妙的。還有你把自己的source編譯后的jar包或者文件夾放到服務器上,一定要每次都發布一遍,如果 你偶爾忘記一次,那么雖然你服務器上跑的class和本地的source一致,由于你沒有發布,那么debug的結果,也不一致了,所以保持一致性是兩重 的含義。

      小結

      其實配置遠程debug并不困難,基本的原理很簡單,服務器端在啟動的服務器的同時,也把JPDA明確的啟動起來,分配一個端口號,那么你在客 戶端只要連接上JPDA服務(sun稱為工具平臺,我個人稱為服務)便能測試了,給我的感覺更像是一個socket編程實現的服務。至于其他的服務器的遠 程調試?原理一定是一樣的,只不過你需要根據它們提供的文檔,相應的修改遠程調試的參數而已。同時聲明一下,我個人的水平也是很一般,在認識和經驗上也有 一定的欠缺,如果本貼子有什么不妥和不對的地方,請大家指出和共同學習。

    posted on 2008-08-19 16:00 想飛就飛 閱讀(566) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    公告


    導航

    <2008年8月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    統計

    常用鏈接

    留言簿(13)

    我參與的團隊

    隨筆分類(69)

    隨筆檔案(68)

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲成AV人片在WWW| 内射干少妇亚洲69XXX| 美女视频免费看一区二区| 手机在线毛片免费播放| 亚洲男人天堂2022| 毛片基地免费观看| 亚洲AV无码之国产精品| 四虎永久免费地址在线网站| 亚洲AV无码精品国产成人| 亚洲国产综合人成综合网站| 国产精品美女久久久免费| 亚洲av无码精品网站| 久久精品国产免费观看| 亚洲熟妇无码一区二区三区| 国产无遮挡吃胸膜奶免费看视频| 国产AV无码专区亚洲AV麻豆丫 | 亚洲色成人WWW永久网站| 一区二区三区无码视频免费福利| 亚洲人成网站在线播放影院在线| 久久久久久精品成人免费图片 | 一道本在线免费视频| 亚洲线精品一区二区三区影音先锋 | 亚洲精品成人av在线| 免费人成动漫在线播放r18 | 亚洲精品第一国产综合境外资源 | 少妇中文字幕乱码亚洲影视| A在线观看免费网站大全| 美女尿口扒开图片免费| 亚洲avav天堂av在线不卡| 国产va免费精品观看精品| 午夜不卡AV免费| 亚洲黄色在线视频| 免费国产不卡午夜福在线| 中国一级毛片视频免费看| 亚洲国产av美女网站| 免费jjzz在在线播放国产| 99re这里有免费视频精品| 性色av极品无码专区亚洲 | 免费爱爱的视频太爽了| GOGOGO高清免费看韩国| 亚洲免费在线观看视频|