diff --git a/apm-sniffer/apm-agent/pom.xml b/apm-sniffer/apm-agent/pom.xml
index 64d51bd07..897ea6d26 100644
--- a/apm-sniffer/apm-agent/pom.xml
+++ b/apm-sniffer/apm-agent/pom.xml
@@ -35,6 +35,8 @@
UTF-8
org.apache.skywalking.apm.agent.SkyWalkingAgent
+ true
+ true
net.bytebuddy
${shade.package}.${shade.net.bytebuddy.source}
@@ -69,6 +71,8 @@
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
${premain.class}
+ ${can.redefine.classes}
+ ${can.retransform.classes}
diff --git a/apm-sniffer/apm-agent/src/main/java/org/apache/skywalking/apm/agent/SkyWalkingAgent.java b/apm-sniffer/apm-agent/src/main/java/org/apache/skywalking/apm/agent/SkyWalkingAgent.java
index 8b02e86cb..8f5b439dd 100644
--- a/apm-sniffer/apm-agent/src/main/java/org/apache/skywalking/apm/agent/SkyWalkingAgent.java
+++ b/apm-sniffer/apm-agent/src/main/java/org/apache/skywalking/apm/agent/SkyWalkingAgent.java
@@ -107,6 +107,7 @@ public class SkyWalkingAgent {
agentBuilder
.type(pluginFinder.buildMatch())
.transform(new Transformer(pluginFinder))
+ .with(AgentBuilder.RedefinitionStrategy.RETRANSFORMATION)
.with(new Listener())
.installOn(instrumentation);