当我们想要在集群环境中调用促销时,我们会遇到异常。它看起来像一个错误的protobuf-java库版本的maven依赖问题。但我们找不到解决方案。
类似的问题:
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | ESC[mException in thread "AfterSaveEventPublisher-master" java.lang.VerifyError: class org.drools.compiler.kie.builder.impl.KieModuleCache$KModuleCache overrides final method getUnknownFields.()Lcom/google/protobuf/UnknownFieldSet;
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.lang.ClassLoader.defineClass1(Native Method)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.bootstrap.loader.YURLClassLoader.loadRegisterAndResolveClass(YURLClassLoader.java:85)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.bootstrap.loader.YURLClassLoader.loadClass(YURLClassLoader.java:72)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at org.drools.compiler.kie.builder.impl.KieMetaInfoBuilder.createCacheBuilder(KieMetaInfoBuilder.java:119)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at org.drools.compiler.kie.builder.impl.KieMetaInfoBuilder.generateKieModuleMetaInfo(KieMetaInfoBuilder.java:72)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at org.drools.compiler.kie.builder.impl.KieMetaInfoBuilder.writeKieModuleMetaInfo(KieMetaInfoBuilder.java:54)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:233)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:197)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.init.impl.DefaultRuleEngineKieModuleSwapper.createKieModule(DefaultRuleEngineKieModuleSwapper.java:276)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.init.impl.DefaultRuleEngineBootstrap.startup(DefaultRuleEngineBootstrap.java:73)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.event.OnTenantStartupProcessor.lambda$0(OnTenantStartupProcessor.java:103)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at java.util.ArrayList.forEach(ArrayList.java:1255)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.event.OnTenantStartupProcessor.activateRulesModules(OnTenantStartupProcessor.java:103)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.event.OnTenantStartupProcessor.processOnTenantStartup(OnTenantStartupProcessor.java:74)
INFO | jvm 1 | main | 2018/01/16 22:13:26.793 | at de.hybris.platform.ruleengine.event.OnTenantStartupProcessor$DefaultRuleEngineTenantListener.afterTenantStartUp(OnTenantStartupProcessor.java:
答案 0 :(得分:1)
制作蚂蚁制作时,创建扩展顺序会发生变化。有两个Protobuf罐子,用于solr和ruleengine。基于Solr的protbuf版本是2.5并且规则引擎存在问题。
可能的解决方案是将“ant production”之后生成的localextions.xml替换为原始的localextions.xml。然后,成功启动服务器。