我想学习一些关于javaagents的东西,但研究并不容易.大多数结果指的是JADE.我知道java代理可能意味着两件事:
我在这里找到了类似的问题,但不幸的是它也提到了版本1.
npe*_*npe 79
第二个案例讨论Java Instrumentation API - 这个链接指向一个相当描述性的Javadoc.
这里是完整的指令和如何创建java检测代理的示例.
主要概念是:
实现静态premain(作为类比main)方法,如下所示:
import java.lang.instrument.Instrumentation;
class Example {
public static void premain(String args, Instrumentation inst) {
...
}
}
Run Code Online (Sandbox Code Playgroud)创建一个清单文件(例如manifest.txt),标记此类以进行预执行.其内容是:
Premain-Class: Example
Run Code Online (Sandbox Code Playgroud)编译类并将此类打包到JAR存档中:
javac Example.java
jar cmf manifest.txt yourAwesomeAgent.jar *.class
Run Code Online (Sandbox Code Playgroud)使用-javaagent参数执行JVM ,如下所示:
java -javaagent:yourAwesomeAgent.jar -jar yourApp.jar
Run Code Online (Sandbox Code Playgroud)如第 2 点所述,很少有对 javaagent 有用的资源。
| 归档时间: |
|
| 查看次数: |
61099 次 |
| 最近记录: |