`

curator-recipes 低版本 导致的codis加载异常

阅读更多
java.lang.NoSuchMethodError: org.apache.curator.utils.PathUtils.validatePath(Ljava/lang/String;)Ljava/lang/String;
	at org.apache.curator.framework.recipes.cache.ChildData.<init>(ChildData.java:34)
	at org.apache.curator.framework.recipes.cache.PathChildrenCache.<clinit>(PathChildrenCache.java:91)
	at com.xxx.framework.cache.plugin.jodis.RoundRobinJedisPool.<init>(RoundRobinJedisPool.java:207)
	at com.xxx.framework.cache.plugin.jodis.RoundRobinJedisPool.<init>(RoundRobinJedisPool.java:165)
	at com.xxx.framework.cache.plugin.jodis.RoundRobinJedisPool.<init>(RoundRobinJedisPool.java:132)
	at com.xxx.framework.cache.impl.jodis.CacheManager.init(CacheManager.java:147)
	at com.xxx.framework.cache.impl.jodis.CacheManager.getInstance(CacheManager.java:233)
	at com.xxx.opencache.test.service.JodisTest.test(JodisTest.java:38)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)



问题是由于 curator-recipes 低版本有问题,所以换成相对高版本的依赖
<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-recipes</artifactId>
  <version>2.8.0</version>
</dependency>

注意用新版本的同时,注意隔离之前的版本依赖


以下文章,启发我关于解决此问题的思路:https://groups.google.com/forum/#!topic/lumify/xfSb0-j1DhY

由于是墙的原因,有人看不了。所以我也粘了出来:

Jayasree Atmakuru
11/18/14


Hi ,

I am building lumify based on centos documentation.

I am getting error in strom jar cmd.

I have created accumulo hadoop based on the cmds given in the documentation.
Still i am getting error on acquiring lock in AccumuloRepositoryAuthorisation create lock method.

please find the error log below:

4959 [ConnectionStateManager-0] WARN  org.apache.curator.framework.
state.ConnectionStateManager - There are no ConnectionStateListeners registered.
5006 [main] INFO  io.lumify.core.model.user.AccumuloAuthorizationRepository - adding authorization [ontology] for secure graph user
Exception in thread "main" com.google.inject.ProvisionException: Guice provision errors:

1) Error injecting constructor, java.lang.NoSuchMethodError: org.apache.curator.utils.PathUtils.validatePath(Ljava/lang/String;)Ljava/lang/String;
  at io.lumify.securegraph.model.ontology.SecureGraphOntologyRepository.<init>(SecureGraphOntologyRepository.java:66)
  at io.lumify.securegraph.model.ontology.SecureGraphOntologyRepository.class(SecureGraphOntologyRepository.java:39)
  while locating io.lumify.securegraph.model.ontology.SecureGraphOntologyRepository
  at io.lumify.core.bootstrap.LumifyBootstrap.configure(LumifyBootstrap.java:137)
  at io.lumify.core.bootstrap.LumifyBootstrap.configure(LumifyBootstrap.java:137)
  while locating io.lumify.core.model.ontology.OntologyRepository
    for parameter 3 at io.lumify.securegraph.model.user.SecureGraphUserRepository.<init>(SecureGraphUserRepository.java:60)
  at io.lumify.securegraph.model.user.SecureGraphUserRepository.class(SecureGraphUserRepository.java:39)
  while locating io.lumify.securegraph.model.user.SecureGraphUserRepository
  at io.lumify.core.bootstrap.LumifyBootstrap.configure(LumifyBootstrap.java:128)
  at io.lumify.core.bootstrap.LumifyBootstrap.configure(LumifyBootstrap.java:128)
  while locating io.lumify.core.model.user.UserRepository
    for parameter 0 at io.lumify.core.cmdline.CommandLineBase.setUserRepository(CommandLineBase.java:157)
  while locating io.lumify.storm.StormRunner

1 error
    at com.google.inject.internal.Errors.throwProvisionExceptionIfErrorsExist(Errors.java:451)
    at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:65)
    at com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:944)
    at io.lumify.core.bootstrap.InjectHelper.inject(InjectHelper.java:31)
    at io.lumify.core.bootstrap.InjectHelper.inject(InjectHelper.java:24)
    at io.lumify.core.cmdline.CommandLineBase.run(CommandLineBase.java:66)
    at io.lumify.storm.StormRunner.main(StormRunner.java:11)
Caused by: java.lang.NoSuchMethodError: org.apache.curator.utils.PathUtils.validatePath(Ljava/lang/String;)Ljava/lang/String;
    at org.apache.curator.framework.recipes.locks.InterProcessMutex.<init>(InterProcessMutex.java:194)
    at org.apache.curator.framework.recipes.locks.InterProcessMutex.<init>(InterProcessMutex.java:76)
    at org.apache.curator.framework.recipes.locks.InterProcessMutex.<init>(InterProcessMutex.java:66)
    at io.lumify.core.model.lock.LockRepository.createLock(LockRepository.java:30)
    at io.lumify.core.model.lock.LockRepository.lock(LockRepository.java:53)
    at io.lumify.core.model.lock.LockRepository.lock(LockRepository.java:39)
    at io.lumify.core.model.user.AccumuloAuthorizationRepository.addAuthorizationToGraph(AccumuloAuthorizationRepository.java:25)
    at io.lumify.securegraph.model.ontology.SecureGraphOntologyRepository.<init>(SecureGraphOntologyRepository.java:69)
    at io.lumify.securegraph.model.ontology.SecureGraphOntologyRepository$$FastClassByGuice$$7fb7e09b.newInstance(<generated>)
    at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
    at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
    at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
    at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.Scopes$1$1.get(Scopes.java:65)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
    at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
    at io.lumify.core.bootstrap.InjectHelper.getInstance(InjectHelper.java:47)
    at io.lumify.core.bootstrap.LumifyBootstrap$ConfigurableProvider.get(LumifyBootstrap.java:284)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.Scopes$1$1.get(Scopes.java:65)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
    at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
    at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
    at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.Scopes$1$1.get(Scopes.java:65)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
    at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
    at io.lumify.core.bootstrap.InjectHelper.getInstance(InjectHelper.java:47)
    at io.lumify.core.bootstrap.LumifyBootstrap$ConfigurableProvider.get(LumifyBootstrap.java:284)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.Scopes$1$1.get(Scopes.java:65)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
    at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
    at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:83)
    at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
    at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73)
    at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:60)
    ... 5 more

Completed



Christian Béland
12/11/14


Thanks,

It almost work now
- show quoted text -
Marked complete byJoe Ferner See this answer in its original position
All replies



Greg McNutt
11/18/14


HI, we just finished an update to get the VM and the code in sync ourselves.   Was a bit of a change to the VM and to the code versions in the code.  Namely storm to 0.93rc1 and kryo to 2.21 but also to remove some of the exclusions in the storm standalone jars.  This gets all the moving pieces in sync [especially the underlying jar support in storm]

Will work offline with the Lumify crew today to get some of our changes into the main branches.

In the mean time, things do work ok when run locally [like storm-local] -- hope this helps.
- show quoted text -



Jayasree Atmakuru
11/18/14


Hi greg,

thank you very much for your reply.

Will you please elaborate on how to use storm-local.

Regards,
Jayasree.A
- show quoted text -

11/25/14

Joe Ferner This is the configuration I use in IntelliJ.



Jayasree Atmakuru
11/25/14


I am able to run storm jar with out any errors.
I removed everything from my storm-local directory and added the curator jars of 2.7.0 version and zookeeper-3.4.6 jar in storm_home/lob directory.
This workaround helped me in getting my storm jar running.

Can you please tell me why you are using Program arguments as --local?
I am running my storm jar using cmd prompt not from any IDE.

Regards,
Jayasree.A
- show quoted text -

11/26/14

Chao Wang "--local" argument is for running the topology in a in-process storm cluster instead of remote cluster. You don't have to start the storm nimbus service etc to run in local mode. I am trying to deploy the lumify topology to the storm-0.9.2-incubati



Jayasree Atmakuru
11/27/14


Hi ,
Thank you for your reply.

I have resolved the curator jar errors. But Kryo jar is not resolving even though i added 2.17 jar.

What need to be done to resolve this jar error. I have karyo 2.21 jar in the storm_home/ lib directory. I have replace that with 2.17 jar and run again the topology. But the error still remains.

Please suggest me.
- show quoted text -



Christian Béland
12/9/14


Hi,

Were you able to fix this? I currently have to same initial problem... (java.lang.NoSuchMethodError: org.apache.curator.utils.PathUtils.validatePath
- show quoted text -



Chao Wang
12/10/14


just add curator version 2.7.0 jar to the storm home directory
- show quoted text -



Christian Béland
12/11/14


Thanks,

It almost work now
- show quoted text -
Marked complete byJoe Ferner

希望对屏幕前的你有帮助
分享到:
评论

相关推荐

    curator-recipes-2.6.0-API文档-中文版.zip

    赠送jar包:curator-recipes-2.6.0.jar; 赠送原API文档:curator-recipes-2.6.0-javadoc.jar; 赠送源代码:curator-recipes-2.6.0-sources.jar; 赠送Maven依赖信息文件:curator-recipes-2.6.0.pom; 包含翻译后...

    curator-recipes-4.3.0-API文档-中英对照版.zip

    赠送jar包:curator-recipes-4.3.0.jar; 赠送原API文档:curator-recipes-4.3.0-javadoc.jar; 赠送源代码:curator-recipes-4.3.0-sources.jar; 赠送Maven依赖信息文件:curator-recipes-4.3.0.pom; 包含翻译后...

    curator-recipes-2.6.0-API文档-中英对照版.zip

    赠送jar包:curator-recipes-2.6.0.jar; 赠送原API文档:curator-recipes-2.6.0-javadoc.jar; 赠送源代码:curator-recipes-2.6.0-sources.jar; 赠送Maven依赖信息文件:curator-recipes-2.6.0.pom; 包含翻译后...

    curator-recipes-2.4.2.jar

    Curator除了提供很便利的API,还提供了一些典型的应用场景,开发人员可以使用参考更好的理解如何使用Zookeeper客户端,所有的都在recipes包中

    curator-recipes-4.0.1.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/4.0.1/curator-recipes-4.0.1.jar

    curator-recipes-2.3.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.3.0/curator-recipes-2.3.0.jar

    curator-recipes-4.0.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/4.0.0/curator-recipes-4.0.0.jar

    curator-recipes-4.3.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/4.3.0/curator-recipes-4.3.0.jar

    curator-recipes-4.2.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/4.2.0/curator-recipes-4.2.0.jar

    curator-recipes-2.8.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.8.0/curator-recipes-2.8.0.jar

    curator-recipes-3.3.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/3.3.0/curator-recipes-3.3.0.jar

    curator-recipes-2.11.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.11.0/curator-recipes-2.11.0.jar

    curator-recipes-2.13.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.13.0/curator-recipes-2.13.0.jar

    curator-recipes-2.11.1.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.11.1/curator-recipes-2.11.1.jar

    curator-recipes-2.9.1.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.9.1/curator-recipes-2.9.1.jar

    curator-recipes-2.10.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.10.0/curator-recipes-2.10.0.jar

    curator-recipes-2.7.1.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.7.1/curator-recipes-2.7.1.jar

    curator-recipes-2.7.0.jar

    ZooKeeper 食谱文档中列出的所有食谱(两阶段提交除外)。 org.apache.curator/curator-recipes/2.7.0/curator-recipes-2.7.0.jar

    curator-framework-4.3.0-API文档-中英对照版.zip

    赠送jar包:curator-framework-4.3.0.jar; 赠送原API文档:curator-framework-4.3.0-javadoc.jar; 赠送源代码:curator-framework-4.3.0-sources.jar; 赠送Maven依赖信息文件:curator-framework-4.3.0.pom; ...

    curator-client-2.6.0-API文档-中文版.zip

    赠送jar包:curator-client-2.6.0.jar; 赠送原API文档:curator-client-2.6.0-javadoc.jar; 赠送源代码:curator-client-2.6.0-sources.jar; 赠送Maven依赖信息文件:curator-client-2.6.0.pom; 包含翻译后的API...

Global site tag (gtag.js) - Google Analytics