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

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

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

    隨筆-8  評(píng)論-31  文章-0  trackbacks-0
    那是2007年三月二日,我發(fā)了<定位Java類中的每個(gè)方法在類文件中的位置>
    引起了幾個(gè)大蝦的注意并且給我指點(diǎn),當(dāng)時(shí)看了以后也沒(méi)有怎么弄,也不知道怎么弄.

    這是cape給我的建議:

    最直接的辦法應(yīng)該是分析class的bytecode,找到每個(gè)Method_info->Code Attribute->LineNumberTable Attribute

    今天空閑得慌而是我拿這個(gè)method linenumber幾個(gè)keyword在網(wǎng)上狂搜了一把,
    http://www.ibm.com/developerworks/cn/java/j-dyn0302/index.html

    得到美文一篇,用Javassist來(lái)做. Javassist是一個(gè)專門操控java class的bytecode的類,可以動(dòng)態(tài)的改變其狀態(tài),我沒(méi)有深究它到底有多大的能耐,有興趣可以去它的官方網(wǎng)站看看,

    http://www.csg.is.titech.ac.jp/~chiba/javassist/

    但是它確實(shí)可以象cape指點(diǎn)的那樣,讓我實(shí)現(xiàn)對(duì)java類中的每個(gè)方法的定位(得到類中的某個(gè)方法的lineRange)

    而是我就隨便翻了幾個(gè)例子以后根據(jù)在線文檔寫(xiě)了不到100行代碼輕松搞定。:) 我高興啊。

    干這個(gè)事情的兩個(gè)java的source code可以從這里得到:

    http://m.tkk7.com/Files/xmp123/MethodParser.zip

    代碼很簡(jiǎn)單,我就不解釋代碼了。

    這是示例結(jié)果:
    ------------------------------------------------------------------------------------------------------------------------------
    Analyzing net.blogjava.xmp123.MyMethodInfo ...
    net.blogjava.xmp123.MyMethodInfo.getLineList() locate between 56 and 56

    net.blogjava.xmp123.MyMethodInfo.updateLineList() locate between 63 and 80

    net.blogjava.xmp123.MyMethodInfo.addLineToLineList(int) locate between 87 and 89

    net.blogjava.xmp123.MyMethodInfo.setLineList(java.util.List) locate between 95 and 97
    ...
    ------------------------------------------------------------------------------------------------------------------------------

    希望這東西有用......
    posted on 2007-08-15 17:56 自己的小屋 閱讀(1138) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲精品无码Av人在线观看国产| 免费a级毛片网站| 久久综合亚洲色HEZYO社区 | 国产男女猛烈无遮挡免费视频 | 国产精品亚洲五月天高清| 免费的涩涩视频在线播放| 亚洲女子高潮不断爆白浆| 色播在线永久免费视频| 免费大片av手机看片| 国产精品亚洲综合一区| 中文字幕成人免费高清在线| 亚洲精品成人无限看| 久久午夜无码免费| 男女啪啪免费体验区| 2048亚洲精品国产| 一个人免费视频观看在线www| 国产V亚洲V天堂无码久久久| 久久午夜羞羞影院免费观看| 亚洲国产品综合人成综合网站| 成人午夜18免费看| 日韩精品无码永久免费网站| 亚洲av最新在线网址| 国产成在线观看免费视频| 亚洲欧洲av综合色无码| 亚洲午夜福利精品久久| 国产精品免费无遮挡无码永久视频| 亚洲福利在线观看| 国产精品永久免费| 亚洲国产精品久久久久| 四虎成人免费网址在线| 久久久精品视频免费观看 | 国产成人无码区免费内射一片色欲| 亚洲日本乱码一区二区在线二产线| 免费黄色毛片视频| 成全视频高清免费观看电视剧| 亚洲宅男天堂a在线| 亚洲熟女乱综合一区二区| 免费看片在线观看| 国产精品免费大片一区二区| 亚洲欧洲国产经精品香蕉网| 国产在线观看免费不卡 |