在 Bluemix 上使用仪器时出现 NoClassDefFoundError
NoClassDefFoundError when using instrumentation on Bluemix
我正在尝试向我的 bluemix 应用程序添加一个 javaagent,该代理使用 Instrumentation。问题是,当我 运行 应用程序时,出现以下错误:
premain() - Instrumentation is already running
...
CWWKF0004E: An unknown exception occurred while installing or removing features. Exception: java.lang.NoClassDefFoundError: agent.ClassInstrumentorTransform
ERR at com.ibm.ws.kernel.feature.internal.subsystem.SubsystemFeatureDefinitionImpl.setHeader(SubsystemFeatureDefinitionImpl.java)
ERR at [internal classes]
我尝试创建另一个具有相同 Premain-Class
和 Agent-Class
结构但使用我自己的 类 的代理并且它有效,我尝试上传我自己的 Instrumentation 类 并使用 Class-Path
将 javaagent 指向它,但错误仍然出现。
有什么问题吗?
我怀疑 Bluemix 环境可能使用了 Instrumentation,有什么想法可以检查它以及如何解决相互依赖性吗?
根据错误消息,您似乎在试图从 javaagent 访问 class 的功能包中有一个 class,但您还没有将 javaagent 包添加到org.osgi.framework.bootdelegation
如知识中心主题中的 Specifying Liberty profile bootstrap properties" 主题所述。
我正在尝试向我的 bluemix 应用程序添加一个 javaagent,该代理使用 Instrumentation。问题是,当我 运行 应用程序时,出现以下错误:
premain() - Instrumentation is already running
...
CWWKF0004E: An unknown exception occurred while installing or removing features. Exception: java.lang.NoClassDefFoundError: agent.ClassInstrumentorTransform
ERR at com.ibm.ws.kernel.feature.internal.subsystem.SubsystemFeatureDefinitionImpl.setHeader(SubsystemFeatureDefinitionImpl.java)
ERR at [internal classes]
我尝试创建另一个具有相同 Premain-Class
和 Agent-Class
结构但使用我自己的 类 的代理并且它有效,我尝试上传我自己的 Instrumentation 类 并使用 Class-Path
将 javaagent 指向它,但错误仍然出现。
有什么问题吗? 我怀疑 Bluemix 环境可能使用了 Instrumentation,有什么想法可以检查它以及如何解决相互依赖性吗?
根据错误消息,您似乎在试图从 javaagent 访问 class 的功能包中有一个 class,但您还没有将 javaagent 包添加到org.osgi.framework.bootdelegation
如知识中心主题中的 Specifying Liberty profile bootstrap properties" 主题所述。