运行jar1时,我需要在JVM args中添加-javaagent参数,但是引用jar1中包含的jar2。我努力了:

-javaagent:BOOT-INF/lib/jetty-alpn-agent-2.0.0.jar"


没有成功。如何在运行时确定运行系统中JAR的位置?

(这是将jetty-alpn-agent-2.0.0.jar作为Java代理运行,以便将Push / 2 APN与HTTP / 2一起使用)

最佳答案

如果知道该类在类路径上,则通常可以执行以下操作:

URL jar = MainClass.class.getProtectionDomain().getCodeSource().getLocation();


Javaagent始终加载在类路径上,这就是为什么您应该能够引用常规应用程序的主类的原因。

09-16 00:51