JRebel 6.5.1
ObjectDB-2.6.9_06
Glassfish4.1.1 (or Payara41 [163 full]]
I appreciate that you are not responsible for compatibility with JRebel, but you might be able to provide some insight or feedback. Reported also to Zeroturnaround for JRebel.
When using JRebel I am getting copious server log output for nearly every @EJB on startup. Typical message is like:
Info: [2016-10-30 09:16:46 #6 enhancer.agent] Not Enhanced: com/example/ejb/query/__EJB31_Generated__ExampleQuery__Intf__: com.objectdb.o.TEX: Type com.example.ejb.query.__EJB31_Generated__ExampleQuery__Intf__ is not found at com.objectdb.o.MSG.e(MSG.java:108) at com.objectdb.o.SCM.w(SCM.java:459) at com.objectdb.o.JEW.aG(JEW.java:160) at com.objectdb.JEnhancerAgent.transform(JEnhancerAgent.java:155) at org.glassfish.persistence.jpa.ServerProviderContainerContractInfo$1.transform(ServerProviderContainerContractInfo.java:98) at org.glassfish.web.loader.WebappClassLoader$3.preprocess(WebappClassLoader.java:3465) at org.glassfish.web.loader.WebappClassLoader.process(WebappClassLoader.java) at org.zeroturnaround.javarebel.integration.util.WeakUtil$WeakClassBytecodeProcessorAdapter.process(SourceFile:287) at com.zeroturnaround.javarebel.rx.a(SourceFile:365) at com.zeroturnaround.javarebel.rx.a(SourceFile:354) at com.zeroturnaround.javarebel.rx.b(SourceFile:407) at com.zeroturnaround.javarebel.SDKIntegrationImpl.processManagedClass(SourceFile:43) at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(SourceFile:35) at com.zeroturnaround.javarebel.px.transform(SourceFile:94) at java.lang.ClassLoader.defineClass(ClassLoader.java) at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) 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:498) at com.zeroturnaround.javarebel.ps.a(SourceFile:96) at com.zeroturnaround.javarebel.ps.a(SourceFile:85) at com.zeroturnaround.javarebel.pz.a(SourceFile:440) at com.zeroturnaround.javarebel.SDKIntegrationImpl.defineReloadableClass(SourceFile:111) at com.sun.ejb.codegen.EjbOptionalIntfGenerator.__define(EjbOptionalIntfGenerator.java) at com.sun.ejb.codegen.EjbOptionalIntfGenerator.makeClass(EjbOptionalIntfGenerator.java) at com.sun.ejb.codegen.EjbOptionalIntfGenerator.access$200(EjbOptionalIntfGenerator.java:65) at com.sun.ejb.codegen.EjbOptionalIntfGenerator$1.run(EjbOptionalIntfGenerator.java:100) at java.security.AccessController.doPrivileged(Native Method) at com.sun.ejb.codegen.EjbOptionalIntfGenerator.loadClass(EjbOptionalIntfGenerator.java:97) at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:753) at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:143) at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:137) at com.sun.ejb.containers.StatelessContainerFactory.createContainer(StatelessContainerFactory.java:61) at org.glassfish.ejb.startup.EjbApplication.loadContainers(EjbApplication.java:221) at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:291) at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:99) at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:206) at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313) at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:496) at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219) at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491) at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539) at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:360) at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534) at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565) at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:360) at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556) at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464) at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109) at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846) at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722) at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534) at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224) at org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service(StaticHttpHandlerBase.java:189) at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167) at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201) at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175) at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235) at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201) at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133) at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112) at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561) at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassNotFoundException: com.example.ejb.query.__EJB31_Generated__ExampleQuery__Intf__ at java.lang.ClassLoader.findClass(ClassLoader.java:530) at com.objectdb.o.ACL.loadClass(ACL.java:131) at com.objectdb.o.BCL.loadClass(BCL.java:63) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at com.objectdb.o.SCM.w(SCM.java:455) ... 76 more Severe: [2016-10-30 09:16:46 #6 enhancer.agent]
I am using post-compile ObjectDB enhancement in an Ant script that targets folders with @Entity classes only.