在BuildAll中在Drools 6.2.0 Final中构建KieBase时遇到异常。
我已经将番石榴从15升级到了16.0和guice 4.0
KieBuilder kbuilder = kService.newKieBuilder(kFile).buildAll();
调用此Build All时,出现以下错误,
原因:java.lang.IllegalAccessError:com / google / inject / internal / Annotations $ AnnotationChecker类非法访问com / google / common / collect / MapMaker类的“私有包”成员 com.google.inject.internal.Annotations $ AnnotationChecker。(Annotations.java:104) 在com.google.inject.internal.Annotations。(Annotations.java:122) 在com.google.inject.Key.ensureRetainedAtRuntime(Key.java:362) 在com.google.inject.Key.strategyFor(Key.java:354) 在com.google.inject.Key.get(Key.java:222) 在org.eclipse.sisu.wire.ParameterKeys。(ParameterKeys.java:28) 在org.eclipse.sisu.wire.DependencyAnalyzer。(DependencyAnalyzer.java:92) 在org.eclipse.sisu.wire.ElementAnalyzer。(ElementAnalyzer.java:87) 在org.eclipse.sisu.wire.WireModule.configure(WireModule.java:74) 在com.google.inject.spi.Elements $ RecordingBinder.install(Elements.java:229) 在com.google.inject.spi.Elements.getElements(Elements.java:103) 在com.google.inject.internal.InjectorShell $ Builder.build(InjectorShell.java:136) 在com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104) 在com.google.inject.Guice.createInjector(Guice.java:94) 在com.google.inject.Guice.createInjector(Guice.java:71) 在com.google.inject.Guice.createInjector(Guice.java:61) 在org.codehaus.plexus.DefaultPlexusContainer.addPlexusInjector(DefaultPlexusContainer.java:477) 在org.codehaus.plexus.DefaultPlexusContainer。(DefaultPlexusContainer.java:203) 在org.codehaus.plexus.DefaultPlexusContainer。(DefaultPlexusContainer.java:167) 在org.kie.scanner.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:136) 在org.kie.scanner.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:110)中 在org.kie.scanner.embedder.MavenEmbedder。(MavenEmbedder.java:88) 在org.kie.scanner.embedder.MavenEmbedder。(MavenEmbedder.java:115) 在org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:41) 在org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:35) 在org.kie.scanner.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:19) 在org.drools.compiler.kproject.xml.PomModel $ Parser.parse(PomModel.java:64) 在org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildPomModel(KieBuilderImpl.java:422) 在org.drools.compiler.kie.builder.impl.KieBuilderImpl.init(KieBuilderImpl.java:112) 在org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:154) 在com.infy.ceh.management.autonomics.drools.execution.service.impl.RuleExecutionServiceImpl.initiateKieBaseForOperation(RuleExecutionServiceImpl.java:126) 在com.infy.ceh.management.autonomics.drools.execution.service.impl.RuleExecutionServiceImpl.init(RuleExecutionServiceImpl.java:55) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498) 在org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor $ LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:365)处 在org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor $ LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:310)处 在org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)处 ...另外18个