Fix Java.lang.ClassFormatError: Duplicate interface name "org/apache/skywalking/apm/agent/core/plugin/interceptor/enhance/EnhancedInstance" (#6173)
This commit is contained in:
parent
3e4d55083a
commit
4877a22ab2
|
|
@ -115,11 +115,14 @@ public abstract class ClassEnhancePluginDefine extends AbstractClassEnhancePlugi
|
|||
* And make sure the source codes manipulation only occurs once.
|
||||
*
|
||||
*/
|
||||
if (!context.isObjectExtended()) {
|
||||
newClassBuilder = newClassBuilder.defineField(CONTEXT_ATTR_NAME, Object.class, ACC_PRIVATE | ACC_VOLATILE)
|
||||
.implement(EnhancedInstance.class)
|
||||
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME));
|
||||
context.extendObjectCompleted();
|
||||
if (!typeDescription.isAssignableTo(EnhancedInstance.class)) {
|
||||
if (!context.isObjectExtended()) {
|
||||
newClassBuilder = newClassBuilder.defineField(
|
||||
CONTEXT_ATTR_NAME, Object.class, ACC_PRIVATE | ACC_VOLATILE)
|
||||
.implement(EnhancedInstance.class)
|
||||
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME));
|
||||
context.extendObjectCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue