javaAgent说明和例子
来源:互联网 发布:java开发 常用代码 编辑:程序博客网 时间:2024/06/01 12:27
1. javaagent详细的说明已经在另外一篇文章中有详细说明:
http://blog.csdn.net/kangojian/article/details/8782575
2.javaagent简单例子
package com.google.agent;import java.lang.instrument.Instrumentation;/** * Created by dell on 2016/12/17. */public class Agent{ //premain 方法有两种可能的签名。 /** * JVM 首先尝试在代理类上调用以下方法 * @param agentArgs agentArgs * @param inst inst */ public static void premain(String agentArgs, Instrumentation inst) { System.out.println("Im 1st premain,My agentAges = [" + agentArgs + "]."); } /** * 如果代理类没有实现上面的方法,那么 JVM 将尝试调用该方法 * @param agentArgs agentArgs */ public static void premain(String agentArgs) { System.out.println("Im 2ed premain,My agentAges = [" + agentArgs + "]."); }}
javaagent只能使用jar包运行,所以需要将该javaagent类导出生成jar包。以IDEA为例:
》在src目录下创建 META-INF/MANIFEST.MF 文件,内容按如下定义(注意为4行,第4行为空行):
Manifest-Version: 1.0Premain-Class: com.google.agent.AgentCan-Redefine-Classes: true
》File--Project Structure...--Project Setting--Artifacts,使用+号新加一个Artifacts,如图:
注意:Manifest Files使用上方设置的配置文件。
》保存成一个新的Artifact。
》回到IDEA,菜单Build > Build Artifacts.. 选择刚才创建的Artifact,点ok 生成了。Output directory目录查看你的jar文件。
3. 简单应用
package com.google.demo;/** * Created by dell on 2016/12/17. */public class Demo{ public static void main(String[] args) { System.out.println("This is main."); }}运行该测试Demo:
运行结果:
Im 1st premain,My agentAges = [agentargs].This is main.
0 0
- javaAgent说明和例子
- JavaAgent 简单例子
- javaagent
- javaagent
- 关于RTSP的理解和例子说明
- 关于RTSP的理解和例子说明
- 关于RTSP的理解和例子说明
- 关于RTSP的理解和例子说明
- 今天搞定个javaagent类加载和tomcat冲突问题
- javaAgent 参数
- 配置javaagent
- Javaagent学习
- window.open的例子和使用方法以及参数说明
- window.open的例子和使用方法以及参数说明
- window.open的例子和使用方法以及参数说明
- window.open的例子和使用方法以及参数说明
- window.open的例子和使用方法以及参数说明
- C# 中的委托和事件 (很好的说明例子)
- 分类之三: Water
- Weex Android加载本地图片及网络图片
- 分类之四:Tree
- HDU3564 线段树+dp
- 图片工具出现bug排查问题事故总结与提高
- javaAgent说明和例子
- LeetCode解题报告 279. Perfect Squares [medium]
- javascript 简单的个人理解(前端技术)
- 注解、动态代理与反射的应用
- 运维工程师前景
- Weex Android交互篇
- 进程的死锁
- libpcap流量统计
- iaas paas SaaS 区别