<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">sorry&nbsp;<span style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; background-color: rgb(255, 255, 255);">jacoco not jacob.</span><div><font face="Arial, Liberation Sans, DejaVu Sans, sans-serif"><span style="font-size: 14px; line-height: 18px; background-color: rgb(255, 255, 255);"><br></span></font></div><div><font face="Arial, Liberation Sans, DejaVu Sans, sans-serif"><span style="font-size: 14px; line-height: 18px; background-color: rgb(255, 255, 255);">Mark<br></span></font><div><div>On 16 Jan 2014, at 15:15, Mark Proctor &lt;<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Doing a quick google. The problem seems to be the jacob instrumentation, it cannot instrument very large classes, as it makes the LOC too large. Jacob isn’t needed anyway, and can be disabled:<br><a href="http://stackoverflow.com/questions/14559117/how-do-i-disable-jacoco-agent-after-jacocoreport">http://stackoverflow.com/questions/14559117/how-do-i-disable-jacoco-agent-after-jacocoreport</a><br><br>Mark (Professional Google Search Monkey)<br>On 16 Jan 2014, at 14:42, waynemetcalfe &lt;waynemetcalfe@outlook.com&gt; wrote:<br><br><blockquote type="cite">Hi Guys,<br>I'm a pretty recent Drools user.<br><br>I'm trying to update a project to stop using the deprecated KnowledgeBase.<br>I've followed examples on <br>http://blog.athico.com/2013/10/configuration-and-convention-based.html<br>&lt;http://blog.athico.com/2013/10/configuration-and-convention-based.html&gt; &nbsp;,<br>but an exception is being thrown when trying to build the KieBases.<br><br>Drools version:6.0.0.Final<br>Java version: 1.7.0_45<br><br>Code snippet:<br>...<br>final KieServices ks = KieServices.Factory.get();<br>final KieRepository kr = ks.getRepository();<br>final KieFileSystem kfs = ks.newKieFileSystem();<br>//ruleScript is simply a string containing the rules<br>kfs.write("src/main/resources/com/company/test/rules/rules.drl",<br>ruleScript);<br>KieBuilder kb = ks.newKieBuilder(kfs);<br>kb.buildAll();<br><br>if (kb.getResults().hasMessages(Level.ERROR)){<br> &nbsp;&nbsp;configuration.getLog().error("\nSomething wrong here!\n\n");<br>} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>final KieContainer kContainer =<br>ks.newKieContainer(kr.getDefaultReleaseId());<br>session = kContainer.newKieSession();<br>...<br><br>The following exception is thrown:<br><br>java.lang.instrument.IllegalClassFormatException: Error while instrumenting<br>class org/drools/compiler/lang/DRL6Lexer.<br> &nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.CoverageTransformer.transform(CoverageTransformer.java:89)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.instrument.TransformerManager.transform(TransformerManager.java:188)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.ClassLoader.defineClass1(Native Method)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.ClassLoader.defineClass(ClassLoader.java:800)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.net.URLClassLoader.access$100(URLClassLoader.java:71)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.net.URLClassLoader$1.run(URLClassLoader.java:361)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.net.URLClassLoader$1.run(URLClassLoader.java:355)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.security.AccessController.doPrivileged(Native Method)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.net.URLClassLoader.findClass(URLClassLoader.java:354)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.ClassLoader.loadClass(ClassLoader.java:425)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.ClassLoader.loadClass(ClassLoader.java:358)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.DRLFactory.getDRLLexer(DRLFactory.java:93)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.DRLFactory.buildLexer(DRLFactory.java:43)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.drools.compiler.compiler.DrlParser.parse(DrlParser.java:164)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.drools.compiler.compiler.DrlParser.parse(DrlParser.java:146)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.PackageBuilder.drlToPackageDescr(PackageBuilder.java:518)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl$1.map(CompositeKnowledgeBuilderImpl.java:404)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.buildResource(CompositeKnowledgeBuilderImpl.java:329)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.buildPackageDescr(CompositeKnowledgeBuilderImpl.java:312)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:96)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:87)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledgePackages(AbstractKieModule.java:204)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:39)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:309)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:187)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>com.company.test.rules.BasicRuleEngine.start(BasicRuleEngine.java:66)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>com.company.test.rules.TestBasicRuleEngine.listenersShouldBeNotifiedOfStartAndStop(TestBasicRuleEngine.java:88)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.reflect.Method.invoke(Method.java:606)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at org.junit.runners.ParentRunner.run(ParentRunner.java:309)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:254)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:149)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at java.lang.reflect.Method.invoke(Method.java:606)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:159)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:87)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:95)<br> &nbsp;&nbsp;Caused by: java.io.IOException: Error while instrumenting class<br>org/drools/compiler/lang/DRL6Lexer.<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.core.instr.Instrumenter.instrumentError(Instrumenter.java:147)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.core.instr.Instrumenter.instrument(Instrumenter.java:98)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.CoverageTransformer.transform(CoverageTransformer.java:87)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;... 60 more<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Caused by: java.lang.RuntimeException: Method code too large!<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.asm.MethodWriter.a(Unknown Source)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.asm.ClassWriter.toByteArray(Unknown<br>Source)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.core.instr.Instrumenter.instrument(Instrumenter.java:79)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at<br>org.jacoco.agent.rt.internal_9dd1198.core.instr.Instrumenter.instrument(Instrumenter.java:96)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;... 61 more<br><br><br>Any help or info would be greatly appreciated!<br><br><br><br><br>--<br>View this message in context: http://drools.46999.n3.nabble.com/KieBuilder-buildAll-causing-exception-tp4027720.html<br>Sent from the Drools: User forum mailing list archive at Nabble.com.<br>_______________________________________________<br>rules-users mailing list<br>rules-users@lists.jboss.org<br>https://lists.jboss.org/mailman/listinfo/rules-users<br></blockquote><br></blockquote></div><br></div></body></html>