2016-01-21 61 views
0

我想整合Spring.My Spring配置Drools的Spring集成是:用滴料

<kie:import releaseId-ref="ksession-rules2" enableScanner="true" scannerInterval="20000"/> 
<kie:releaseId id="ksession-rules2" groupId="com.test" artifactId="epay-risk2" version="1.0.3"/> 

<bean id="kiePostProcessor" 
     class="org.kie.spring.annotations.KModuleAnnotationPostProcessor"/> 

我不知道爲什麼下面的異常被拋出:

java.lang.NoSuchMethodError: com.google.inject.Binder.bindListener(Lcom/google/inject/matcher/Matcher;[Lcom/google/inject/spi/ProvisionListener;)V 
    at org.eclipse.sisu.plexus.PlexusBindingModule.configure(PlexusBindingModule.java:75) ~[org.eclipse.sisu.plexus-0.0.0.M5.jar:na] 
    at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) ~[guice-3.0.jar:na] 
    at com.google.inject.spi.Elements.getElements(Elements.java:101) ~[guice-3.0.jar:na] 
    at com.google.inject.spi.Elements.getElements(Elements.java:92) ~[guice-3.0.jar:na] 
    at org.eclipse.sisu.wire.WireModule.configure(WireModule.java:75) ~[org.eclipse.sisu.inject-0.0.0.M5.jar:na] 
    at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) ~[guice-3.0.jar:na] 
    at com.google.inject.spi.Elements.getElements(Elements.java:101) ~[guice-3.0.jar:na] 
    at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:133) ~[guice-3.0.jar:na] 
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:103) ~[guice-3.0.jar:na] 
    at com.google.inject.Guice.createInjector(Guice.java:95) ~[guice-3.0.jar:na] 
    at com.google.inject.Guice.createInjector(Guice.java:72) ~[guice-3.0.jar:na] 
    at com.google.inject.Guice.createInjector(Guice.java:62) ~[guice-3.0.jar:na] 
    at org.codehaus.plexus.DefaultPlexusContainer.addPlexusInjector(DefaultPlexusContainer.java:477) ~[org.eclipse.sisu.plexus-0.0.0.M5.jar:na] 
    at org.codehaus.plexus.DefaultPlexusContainer.<init>(DefaultPlexusContainer.java:203) ~[org.eclipse.sisu.plexus-0.0.0.M5.jar:na] 
    at org.codehaus.plexus.DefaultPlexusContainer.<init>(DefaultPlexusContainer.java:167) ~[org.eclipse.sisu.plexus-0.0.0.M5.jar:na] 
    at org.kie.scanner.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:166) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenEmbedderUtils.buildPlexusContainer(MavenEmbedderUtils.java:140) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.PlexusComponentProvider.<init>(PlexusComponentProvider.java:37) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenEmbedderUtils.buildComponentProvider(MavenEmbedderUtils.java:56) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenEmbedder.<init>(MavenEmbedder.java:75) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenEmbedder.<init>(MavenEmbedder.java:69) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:55) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:49) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:36) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kproject.xml.PomModel$Parser.parse(PomModel.java:89) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.AbstractKieModule.getPomModel(AbstractKieModule.java:395) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.AbstractKieModule.getJarDependencies(AbstractKieModule.java:126) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.MavenClassLoaderResolver.getClassLoader(MavenClassLoaderResolver.java:64) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:68) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:56) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieModule(KieBuilderImpl.java:221) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.KieRepositoryScannerImpl.build(KieRepositoryScannerImpl.java:220) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.KieRepositoryScannerImpl.buildArtifact(KieRepositoryScannerImpl.java:170) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:126) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:121) ~[kie-ci-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.loadKieModuleFromMavenRepo(KieRepositoryImpl.java:129) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:115) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:92) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:115) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:111) ~[drools-compiler-6.3.0.Final.jar:6.3.0.Final] 
    at org.kie.spring.factorybeans.KieImportFactoryBean.setKContainer(KieImportFactoryBean.java:115) ~[kie-spring-6.3.0.Final.jar:6.3.0.Final] 

回答

1

我添加在配置到我的pom.xml後,問題就解決了。

<dependency> 
    <groupId>com.google.inject</groupId> 
    <artifactId>guice</artifactId> 
    <version>4.0</version> 
</dependency> 
<dependency> 
    <groupId>org.eclipse.aether</groupId> 
    <artifactId>aether-impl</artifactId> 
    <version>0.9.0.M4</version> 
</dependency>