Search code examples
java-8rmiweblogic12cjrebel

JRebel 5.6.1 not starting: Throwing java.lang.ClassNotFoundException: weblogic/rmi/spi/HostID error Java8


I am using JRebel version 5.6.1. I am trying to start my server on Java 1.8 and weblogic 12.2.1. When I start my server, I get the following error on the console:

2015-11-09 11:25:54 JRebel: ERROR java.lang.RuntimeException: java.lang.ClassNotFoundException: weblogic/rmi/spi/HostID
    at com.zeroturnaround.javarebel.mE.a(JRebel:1684)
    at com.zeroturnaround.javarebel.mE.a(JRebel:1654)
    at com.zeroturnaround.javarebel.mJ.a(JRebel:1426)
    at com.zeroturnaround.javarebel.mJ.a(JRebel:1325)
    at com.zeroturnaround.javarebel.mQ.d(JRebel:1475)
    at com.zeroturnaround.javarebel.mP.d(JRebel:866)
    at com.zeroturnaround.javarebel.Dr.d(JRebel:63)
    at com.zeroturnaround.javarebel.mC.a(JRebel:1554)
    at com.zeroturnaround.javarebel.mC.b(JRebel:1017)
    at com.zeroturnaround.javarebel.mC.a(JRebel:693)
    at com.zeroturnaround.javarebel.mC.a(JRebel:506)
    at com.zeroturnaround.javarebel.Dm.process(JRebel:32)
    at com.zeroturnaround.javarebel.yQ.a(JRebel:257)
    at com.zeroturnaround.javarebel.yQ.a(JRebel:246)
    at com.zeroturnaround.javarebel.yQ.a(JRebel:224)
    at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(JRebel:127)
    at com.zeroturnaround.javarebel.yz.transform(JRebel:45)
    at java.lang.ClassLoader.defineClass(ClassLoader.java)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:836)
    at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:515)
    at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:495)
    at com.oracle.classloader.SearchPolicy.defineClass(SearchPolicy.java:115)
    at com.oracle.classloader.search.SearchCodeSources.loadClass(SearchCodeSources.java:174)
    at com.oracle.classloader.search.SearchSequence.loadClass(SearchSequence.java:126)
    at com.oracle.classloader.PolicyClassLoader$1.run(PolicyClassLoader.java:259)
    at com.oracle.classloader.PolicyClassLoader$1.run(PolicyClassLoader.java:257)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.oracle.classloader.PolicyClassLoader.loadClass(PolicyClassLoader.java:256)
    at com.oracle.classloader.weblogic.LaunchClassLoader.loadClass(LaunchClassLoader.java:62)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at weblogic.rmi.internal.DescriptorManager.createRuntimeDescriptor(DescriptorManager.java:127)
    at weblogic.rmi.internal.DescriptorManager.getBasicRuntimeDescriptor(DescriptorManager.java:106)
    at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:66)
    at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:51)
    at weblogic.rmi.internal.OIDManager.makeServerReference(OIDManager.java:192)
    at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:173)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceRemote(RemoteObjectReplacer.java:107)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:90)
    at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:234)
    at weblogic.rmi.internal.OIDManager.initializeDGCServer(OIDManager.java:229)
    at weblogic.rmi.internal.OIDManager.initializeServer(OIDManager.java:236)
    at weblogic.rmi.internal.OIDManager.initialize(OIDManager.java:220)
    at weblogic.rmi.internal.RMIServerService.start(RMIServerService.java:52)
    at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76)
    at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1262)
    at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:332)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:374)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471)
    at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:228)
    at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2072)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:88)
    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1213)
    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1144)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:643)
    at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348)
    at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333)
    at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54)
    at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
    at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:617)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:397)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)

2015-11-09 11:25:54 JRebel: ERROR Class 'weblogic/rmi/internal/BasicRuntimeDescriptor' could not be processed by 'com.zeroturnaround.javarebel.Dm@77e6b35e': java.lang.RuntimeException: java.lan NotFoundException: weblogic/rmi/spi/HostID at com.zeroturnaround.javarebel.mE.a(JRebel:1684) at com.zeroturnaround.javarebel.mE.a(JRebel:1654) at com.zeroturnaround.javarebel.mJ.a(JRebel:1426) at com.zeroturnaround.javarebel.mJ.a(JRebel:1325) at com.zeroturnaround.javarebel.mQ.d(JRebel:1475) at com.zeroturnaround.javarebel.mP.d(JRebel:866) at com.zeroturnaround.javarebel.Dr.d(JRebel:63) at com.zeroturnaround.javarebel.mC.a(JRebel:1554) at com.zeroturnaround.javarebel.mC.b(JRebel:1017) at com.zeroturnaround.javarebel.mC.a(JRebel:693) at com.zeroturnaround.javarebel.mC.a(JRebel:506) at com.zeroturnaround.javarebel.Dm.process(JRebel:32) at com.zeroturnaround.javarebel.yQ.a(JRebel:257) at com.zeroturnaround.javarebel.yQ.a(JRebel:246) at com.zeroturnaround.javarebel.yQ.a(JRebel:224) at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(JRebel:127) at com.zeroturnaround.javarebel.yz.transform(JRebel:45) at java.lang.ClassLoader.defineClass(ClassLoader.java) at java.lang.ClassLoader.defineClass(ClassLoader.java:836) at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:515) at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:495) at com.oracle.classloader.SearchPolicy.defineClass(SearchPolicy.java:115) at com.oracle.classloader.search.SearchCodeSources.loadClass(SearchCodeSources.java:174) at com.oracle.classloader.search.SearchSequence.loadClass(SearchSequence.java:126) at com.oracle.classloader.PolicyClassLoader$1.run(PolicyClassLoader.java:259) at com.oracle.classloader.PolicyClassLoader$1.run(PolicyClassLoader.java:257) at java.security.AccessController.doPrivileged(Native Method) at com.oracle.classloader.PolicyClassLoader.loadClass(PolicyClassLoader.java:256) at com.oracle.classloader.weblogic.LaunchClassLoader.loadClass(LaunchClassLoader.java:62) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at weblogic.rmi.internal.DescriptorManager.createRuntimeDescriptor(DescriptorManager.java:127) at weblogic.rmi.internal.DescriptorManager.getBasicRuntimeDescriptor(DescriptorManager.java:106) at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:66) at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:51) at weblogic.rmi.internal.OIDManager.makeServerReference(OIDManager.java:192) at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:173) at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceRemote(RemoteObjectReplacer.java:107) at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:90) at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:234) at weblogic.rmi.internal.OIDManager.initializeDGCServer(OIDManager.java:229) at weblogic.rmi.internal.OIDManager.initializeServer(OIDManager.java:236) at weblogic.rmi.internal.OIDManager.initialize(OIDManager.java:220) at weblogic.rmi.internal.RMIServerService.start(RMIServerService.java:52) at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76) at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1262) at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:332) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:374) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471) at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:228) at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2072) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:88) at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1213) at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1144) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:643) at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:617) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:397) at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)

I get the initial message from JRebel but after that the above error comes and I am not able to update any of my classes. Also I do not get any message that folders would be monitored for changes.

Please help me with pointers to resolve the issue.


Solution

  • This issue has been fixed in JRebel nightly build. Nightly build can be downloaded from https://zeroturnaround.com/software/jrebel/download/nightly-build/