Jrebel没有使用weblogic 12.X

时间:2018-05-24 13:36:21

标签: weblogic weblogic12c jrebel

问题说明: 无法使用JRebel

退回weblogic服务器

错误: 当我试图反弹服务器时,我收到了以下错误

JRebel: ERROR Class 'java.lang.ClassLoader' could not be processed by com.zeroturnaround.javarebel.bv@null: org.zeroturnaround.bundled.javassist.bytecode.DuplicateMemberException: duplicate method: _jr$defineClass in java.lang.ClassLoader
        at org.zeroturnaround.bundled.javassist.bytecode.ClassFile.testExistingMethod(SourceFile:721)
        at org.zeroturnaround.bundled.javassist.bytecode.ClassFile.addMethod(SourceFile:696)
        at org.zeroturnaround.bundled.javassist.CtClassType.addMethod(SourceFile:1411)
        at com.zeroturnaround.javarebel.bv.process(SourceFile:40)
        at org.zeroturnaround.javarebel.integration.support.JavassistClassBytecodeProcessor.process(SourceFile:79)
        at com.zeroturnaround.javarebel.vu.a(SourceFile:376)
        at com.zeroturnaround.javarebel.vu.a(SourceFile:365)
        at com.zeroturnaround.javarebel.vu.a(SourceFile:350)
        at com.zeroturnaround.javarebel.f.runBootClassProcessors(SourceFile:245)
        at com.zeroturnaround.javarebel.bl.a(SourceFile:115)
        at com.zeroturnaround.javarebel.gib.a(SourceFile:63)
        at com.zeroturnaround.javarebel.gfc.a(SourceFile:59)
        at com.zeroturnaround.javarebel.gfc.doTransform(SourceFile:39)
        at com.zeroturnaround.jrebelbase.reorder.a.transform(SourceFile:182)
        at com.zeroturnaround.jrebelbase.reorder.a.transform(SourceFile:148)
        at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java)
        at sun.instrument.InstrumentationImpl.redefineClasses0(Native Method)
        at sun.instrument.InstrumentationImpl.redefineClasses(InstrumentationImpl.java:170)
        at com.mercury.opal.capture.jdk15.agent.ProbeClassFileTransformer.instrumentAndReplace(ProbeClassFileTransformer.java:369)
        at com.mercury.opal.capture.jdk15.agent.ProbeClassFileTransformer.reinstrumentClass(ProbeClassFileTransformer.java:331)
        at com.mercury.opal.capture.jdk15.agent.ProbeClassFileTransformer.patchClassLoaders(ProbeClassFileTransformer.java:137)
        at com.mercury.opal.capture.jdk15.agent.ProbeClassFileTransformer.<init>(ProbeClassFileTransformer.java:98)
        at com.mercury.opal.capture.jdk15.agent.InstrumentationAgent.premain(InstrumentationAgent.java:66)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.__invoke(DelegatingMethodAccessorImpl.java:43)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at sun.instrument.InstrumentationImpl._jrLoadClassAndStartAgent(InstrumentationImpl.java:386)
        at com.zeroturnaround.jrebelbase.reorder.b.a(SourceFile:31)
        at com.zeroturnaround.jrebelbase.reorder.a.c(SourceFile:129)
        at com.zeroturnaround.jrebelbase.reorder.a.a(SourceFile:118)
        at com.zeroturnaround.javarebel.gec.a(SourceFile:309)
        at com.zeroturnaround.javarebel.gec.deferredInitHook(SourceFile:149)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java)

配置详细信息:

基于Jrebel根文件夹的启动脚本中的以下行

export REBEL_HOME=[JRebel root folder]
export JAVA_OPTIONS="-agentpath:$REBEL_HOME/lib/libjrebel64.so -Drebel.remoting_plugin=true $JAVA_OPTIONS"

版本:

Weblogic:12.2.1.2.0

Jrebel:7.1.2

任何人都可以帮助我过来吗?

1 个答案:

答案 0 :(得分:3)

请尝试使用最新版本的JRebel而不是 7.1.2 。在https://zeroturnaround.com/software/jrebel/download/prev-releases/下载。

如果由于某种原因结果仍然相同,也请删除 REBEL_HOME / bootcache 并重试。如果您仍然看到例外情况,请写信至support@zeroturnaround.com以及 jrebel.log 来自 REBEL_HOME ,他们将能够帮助你。