JVM 实例代理
-javaagent 是 java 命令的一个参数。参数 -javaagent 可以用于指定一个 jar 包,并且对该 java 包有 2 个要求:
- 这个 jar 包的
MANIFEST.MF文件必须指定Premain-Class项。 Premain-Class指定的那个类必须实现premain()方法。
premain() 方法,从字面上理解,就是运行在 main() 函数之前的的类。
当 Java 虚拟机启动时,在执行 main() 函数之前,JVM 会先运行 -javaagent 所指定 jar 包内 Premain-Class 这个类的 premain() 方法 。
该包提供了一些工具帮助开发人员在 Java 程序运行时,动态修改系统中的 Class 类型。
参考文章:《JavaAgent 使用指南》
maven 的 settings.yml 配置 sonatype 中央仓库:
<mirror>
<id>mvnrepository</id>
<mirrorOf>mvnrepository</mirrorOf>
<url>http://mvnrepository.com/</url>
</mirror>
<mirror>
<id>sonatype</id>
<mirrorOf>sonatype</mirrorOf>
<url>https://s01.oss.sonatype.org/</url>
</mirror>项目的 pom.xml 配置构件坐标:
<dependency>
<groupId>com.exp-blog</groupId>
<artifactId>jvm-agent</artifactId>
<version>1.0.0</version>
</dependency>