字节码插桩,javaagent 保证使用的jdk是1.5以上的才能进行使用(包含1.5)
idea 激活的时候使用的就是 -javaagent 技术
/**
*
* Create by yang_zzu on 2020/6/14 on 18:02
*/
public class AgentMain {
//javaagent 入口方法
public static void premain(String arg, Instrumentation instrumentation) {
System.out.println("hello agent!!!!!");
//打印所有的 IDEA 中类的方法
instrumentation.addTransformer(new ClassFileTransformer() {
@Override
public byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException {
System.out.println(className);
return null;
}
});
}
}
将这个 java 类打成 jar 包,只打包这个java 类就可以了,其他的java 文件可以不用进行打包操作。
jar 包的路径地址:
E:\idea-work\mybatisYang\target\mybatisYang-1.0-SNAPSHOT.jar
和在对 idea 激活的时候,的使用操作是一样的。
找到 idea 的 bin 文件夹,打开命令行窗口,执行 idea.bat 文件
使用完之后,要将 之前添加的 -javaagent:E:\idea-work\mybatisYang\target\mybatisYang-1.0-SNAPSHOT.jar
删除,以免在使用的使用造成什么一样问题。