日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

JavaAgent的簡單例子

瀏覽:28日期:2022-08-14 09:04:08

JavaAgent 是JDK 1.5 以后引入的,也可以叫做Java代理。

JavaAgent 是運行在 main方法之前的攔截器,它內(nèi)定的方法名叫 premain ,也就是說先執(zhí)行 premain 方法然后再執(zhí)行 main 方法。

那么如何實現(xiàn)一個 JavaAgent 呢?很簡單,只需要增加 premain 方法即可。

看下面的代碼和代碼中的注釋說明:

package com.shanhy.demo.agent;import java.lang.instrument.Instrumentation;/** * 我的Java代理 * * @author 單紅宇(365384722) * @myblog http://blog.csdn.net/catoop/ * @create 2016年3月30日 */public class MyAgent { /** * 該方法在main方法之前運行,與main方法運行在同一個JVM中 * 并被同一個System ClassLoader裝載 * 被統(tǒng)一的安全策略(security policy)和上下文(context)管理 * * @param agentOps * @param inst * @author SHANHY * @create 2016年3月30日 */ public static void premain(String agentOps, Instrumentation inst) {System.out.println('=========premain方法執(zhí)行========');System.out.println(agentOps); } /** * 如果不存在 premain(String agentOps, Instrumentation inst) * 則會執(zhí)行 premain(String agentOps) * * @param agentOps * @author SHANHY * @create 2016年3月30日 */ public static void premain(String agentOps) {System.out.println('=========premain方法執(zhí)行2========');System.out.println(agentOps); }}

寫完這個類后,我們還需要做一步配置工作。

在 src 目錄下添加 META-INF/MANIFEST.MF 文件,內(nèi)容按如下定義:

Manifest-Version: 1.0Premain-Class: com.shanhy.demo.agent.MyAgentCan-Redefine-Classes: true

要特別注意,一共是四行,第四行是空行,還有就是冒號后面的一個空格,如下截圖:

JavaAgent的簡單例子

然后我們打包代碼為 myagent.jar

注意打包的時候選擇我們自己定義的 MANIFEST.MF

JavaAgent的簡單例子

接著我們在創(chuàng)建一個帶有main方法的主程序工程,截圖如下:

JavaAgent的簡單例子

然后將該主程序打包為 myapp.jar

如何執(zhí)行 myagent.jar ?我們通過 -javaagent 參數(shù)來指定我們的Java代理包,值得一說的是 -javaagent 這個參數(shù)的個數(shù)是不限的,如果指定了多個,則會按指定的先后執(zhí)行,執(zhí)行完各個 agent 后,才會執(zhí)行主程序的 main 方法。

命令如下:

java -javaagent:G:myagent.jar=Hello1 -javaagent:G:myagent.jar=Hello2 -javaagent:G:myagent.jar=Hello3 -jar myapp.jar

輸出結(jié)果:

G:>java -javaagent:G:myagent.jar=Hello1 -javaagent:G:myagent.jar=Hello2 -javaagent:G:myagent.jar=Hello3 -jar myapp.jar

=========premain方法執(zhí)行========

Hello1

=========premain方法執(zhí)行========

Hello2

=========premain方法執(zhí)行========

Hello3

特別提醒:如果你把 -javaagent 放在 -jar 后面,則不會生效。也就是說,放在主程序后面的 agent 是無效的。

比如執(zhí)行:

java -javaagent:G:myagent.jar=Hello1 -javaagent:G:myagent.jar=Hello2 -jar myapp.jar -javaagent:G:myagent.jar=Hello3

只會有前個生效,第三個是無效的。 輸出結(jié)果:

G:>java -javaagent:G:myagent.jar=Hello1 -javaagent:G:myagent.jar=Hello2 -jar myapp.jar -javaagent:G:myagent.jar=Hello3

=========premain方法執(zhí)行========

Hello1

=========premain方法執(zhí)行========

Hello2

命令中的Hello1為我們傳遞給 premain 方法的字符串參數(shù)。

至此,我們會使用 javaagent 了,但是單單看這樣運行的效果,好像沒有什么實際意義嘛。

我們可以用 javaagent 做什么呢?下篇文章我們來介紹如何在項目中應(yīng)用 javaagent。

最后說一下,還有一種,在main方法執(zhí)行后再執(zhí)行代理的方法,因為不常用,而且主程序需要配置 Agent-Class,所以不常用,如果需要自行了解下 agentmain(String agentArgs, Instrumentation inst) 方法。

以上就是JavaAgent的簡單例子的詳細內(nèi)容,更多關(guān)于JavaAgent的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品蜜芽在线观看| 福利片在线一区二区| 婷婷精品视频| 亚洲黑丝一区二区| 蜜桃tv一区二区三区| 不卡一区2区| 色老板在线视频一区二区| 成人va天堂| 国精品一区二区| 日韩专区欧美专区| 久久精品xxxxx| 国产一区二区三区探花| 六月婷婷综合| 今天的高清视频免费播放成人| 亚洲一级黄色| 99热精品在线| 日本国产一区| 美女视频黄 久久| 亚洲永久av| 免费久久久久久久久| 美女久久一区| 综合色就爱涩涩涩综合婷婷| 亚洲资源在线| 免费在线成人| 日韩不卡视频在线观看| 国产偷自视频区视频一区二区| 亚洲丝袜美腿一区| 免费在线观看一区| 成人看片网站| 中文字幕日韩欧美精品高清在线| 国产精品观看| 日韩中文字幕高清在线观看| 久久国产福利| 久久av免费| 在线成人直播| 欧美一区91| 国产v日韩v欧美v| 亚洲一区欧美二区| 国产乱人伦丫前精品视频| 日韩88av| 中文一区一区三区免费在线观| 国产精品视频一区二区三区四蜜臂| 国产伦久视频在线观看| 亚洲欧美网站| 牛牛精品成人免费视频| 91精品一区二区三区综合在线爱| 综合国产在线| 97精品国产福利一区二区三区| 欧美精品羞羞答答| 欧美一区成人| 欧美日韩激情| 日韩成人在线看| 久久久精品五月天| 欧美日一区二区三区在线观看国产免| 最新中文字幕在线播放| 国产女优一区| 国产成人精品一区二区三区免费 | 亚洲精品综合| 日本不良网站在线观看| 亚洲免费资源| 91精品国产成人观看| 日本v片在线高清不卡在线观看| 桃色一区二区| 国产伦理久久久久久妇女| 久久精选视频| 欧美一区自拍| 国产色综合网| 91一区二区三区四区| 亚洲91在线| 蜜桃一区二区三区| 免费视频一区二区三区在线观看| 日韩一级网站| 欧美成人基地| 国产网站在线| 在线一区免费观看| 亚洲+小说+欧美+激情+另类| 免费成人av在线播放| 青青草伊人久久| 国产在线日韩精品| 国产偷自视频区视频一区二区| 日本一不卡视频| 亚洲高清毛片| 日本在线不卡视频| 国产日韩欧美三区| 亚洲欧美日韩国产| 视频小说一区二区| 美女高潮久久久| 蜜桃久久av| 久久国产成人午夜av影院宅| 久久精品国产久精国产| 日韩不卡一区二区三区| 国产亚洲在线| 999久久久免费精品国产| 久久精品国产999大香线蕉| 日韩精品亚洲专区| 免费国产自久久久久三四区久久 | 欧美精品中文字幕亚洲专区| 久久国产高清| 免费久久精品| 午夜精品成人av| 精品国产一级| 欧美精品不卡| 国产欧美一区二区色老头| 中文字幕av一区二区三区人 | 视频一区在线视频| 欧美va天堂| 久久伊人亚洲| 国产免费av国片精品草莓男男| 中文字幕av一区二区三区四区| 国产农村妇女精品一二区| 欧洲激情综合| 亚洲精品一二三区区别| 激情综合激情| 在线日韩av| 欧美精品羞羞答答| 久久人人99| 天堂网av成人| 久久久久欧美精品| 欧美gv在线| 久久久久国产| 亚洲性视频h| 久久理论电影| av亚洲在线观看| 尹人成人综合网| 日韩亚洲在线| 在线看片日韩| 日韩精品乱码av一区二区| 日韩三区四区| 国产精品亚洲综合色区韩国| 国产日韩欧美高清免费| 国产精品一页| 麻豆精品在线播放| 久久女人天堂| 日韩欧美中文| 国产综合色产| 久久国产精品久久w女人spa| 亚洲一区二区三区高清不卡| 天堂成人国产精品一区| 综合国产精品| 国产精品手机在线播放| 国产成人精品亚洲线观看 | 国精品产品一区| 日韩一区二区三区免费播放| 日韩中文在线播放| 午夜电影亚洲| 亚洲理论在线| 国产色噜噜噜91在线精品| 美女av一区| 午夜精品久久久久久久久久蜜桃| 精品欧美久久| 蜜桃免费网站一区二区三区 | 日韩精品一卡二卡三卡四卡无卡| 亚洲人成网站在线在线观看| 国产欧美一区二区三区精品观看| 国产+成+人+亚洲欧洲在线| 国产 日韩 欧美一区| 亚洲少妇一区| 欧美在线黄色| 97国产精品| 尤物在线精品| 日本a口亚洲| 在线手机中文字幕| 欧美另类专区| 欧美精品影院| 精品一区二区三区亚洲| 四虎4545www国产精品 | 亚洲激情欧美| 日本少妇一区二区| 久久久久久一区二区| 亚洲激情国产| 国产精品v亚洲精品v日韩精品| 亚洲黄色免费看| 久久夜色精品| 九九99久久精品在免费线bt| 1000部精品久久久久久久久| 亚洲精品视频一二三区| 国产精品国产一区| 欧美日韩少妇| 欧美精品97| 夜夜精品视频| 精品一区91| 尹人成人综合网| 国产乱人伦精品一区| 精品欧美激情在线观看| 国产欧美久久一区二区三区| 99久久www免费| 国产欧美高清| 在线 亚洲欧美在线综合一区| 国产免费av国片精品草莓男男| 在线一区视频观看| 国产欧美日韩在线一区二区| 欧美日韩激情| 国产精品www.| 妖精视频成人观看www| 久久精品国产一区二区| 在线综合视频| 日韩在线不卡| 国产日韩欧美在线播放不卡| 午夜av一区| 在线看片福利|