在Bluemix上使用检测时出现NoClassDefFoundError

时间:2015-07-26 11:34:32

标签: ibm-cloud websphere-liberty javaagents

我正在尝试将javaagent添加到我的bluemix应用程序中,此代理程序使用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-ClassAgent-Class结构创建另一个代理但使用我自己的类并且它有效,我尝试上传我自己的Instrumentation类副本并使用它将javaagent指向它Class-Path但错误仍然存​​在。

任何消化可能是什么问题? 我怀疑Bluemix环境可能使用了Instrumentation,任何想法如何检查以及如何解决内部依赖?

1 个答案:

答案 0 :(得分:3)

根据错误消息,您看起来在功能包中有一个类正在尝试从javaagent访问一个类,但是您没有按照org.osgi.framework.bootdelegation中的描述将javaagent包添加到role_hierarchy: ROLE_CONTRIBUTOR: ROLE_USER ROLE_MODERATOR: ROLE_CONTRIBUTOR ROLE_ADMIN: ROLE_MODERATOR ROLE_SUPER_ADMIN: ROLE_ADMIN {3}}"知识中心主题中的主题。