【发布时间】:2017-04-19 00:08:40
【问题描述】:
要告诉 JVM 在 Jar 文件的主类之前调用 Java Instrumentation 代理,您通常必须使用命令选项来调用它:
java -javaagent:agent.jar program.jar
每次都必须输入这个很不方便,那么有没有办法在 program.jar 清单中指定代理?
# program.jar/META-INF/MANIFEST.MF
...
Java-Agent: agent.jar
【问题讨论】:
-
this answer 的末尾是一个示例代码,它使用 Attach API 附加到自身,换句话说,将自身作为 Java 代理启动。它的主要目的是掌握
Instrumentation实现实例。如果这是你的目标,那么你已经完成了。如果您确定您的代码将包含在已经具有必要的Agent-Class:清单条目的 jar 文件中,则可以通过跳过虚拟 jar 文件的创建来简化该解决方案。
标签: java jar manifest instrumentation javaagents