Hi Ignasi,

Thanks for your fast response!

Regards,
Ruben

On Sat, Nov 7, 2015 at 9:03 PM, Ignasi Barrera <[email protected]> wrote:

> Hi Ruben,
>
> It looks like the service loader is trying to load the enterprisechef
> provider, but it has been recently removed in favor of the generic chef api.
>
> Looking at the code, the "jclouds-all" still includes my mistake the old
> enterprisechef dependency. I'll fix that asap.
>
> Meanwhile you can fix your issue by not using jclouds-all and declaring
> just the providers/apis you use.
>
> HTH!
>
> I.
> El 7/11/2015 10:43, "Ruben Rubio Rey" <[email protected]> escribió:
>
>> Hi,
>>
>> I am having trouble running digitalocean2. If I try to run this code:
>>
>>         final String POLL_PERIOD_TWENTY_SECONDS =
>> String.valueOf(SECONDS.toMillis(20));
>>
>>         Properties overrides = new Properties();
>>
>> overrides.setProperty(ComputeServiceProperties.POLL_INITIAL_PERIOD,
>> POLL_PERIOD_TWENTY_SECONDS);
>>         overrides.setProperty(ComputeServiceProperties.POLL_MAX_PERIOD,
>> POLL_PERIOD_TWENTY_SECONDS);
>>
>>         Iterable<Module> modules = ImmutableSet.<Module> of(new
>> SshjSshClientModule(), new SLF4JLoggingModule());
>>         //Iterable<Module> modules = ImmutableSet.<Module> of(new
>> SshjSshClientModule());
>>         ComputeServiceContext context =
>> ContextBuilder.newBuilder("digitalocean2")
>>                 .credentials("username", "password")
>>                 .modules(modules)
>>                 .overrides(overrides)
>>                 .buildView(ComputeServiceContext.class);
>>
>>         ComputeService computeService = context.getComputeService();
>>
>>         TemplateOptions opts = computeService.templateOptions();
>>         Template template = computeService.templateBuilder()
>>                 .locationId("sfo1")
>>                 .imageId("sfo1/debian-8-x64")
>>                 .hardwareId("512mb")
>>                 .options(opts.as
>> (DigitalOcean2TemplateOptions.class).privateNetworking(true))
>>                 .build();
>>
>>
>>         Set<? extends NodeMetadata> nodes =
>> computeService.createNodesInGroup("unittest", 1, template);
>>         for (NodeMetadata nodeMetadata : nodes) {
>>             System.out.println("BuildNewServerTask Login: ssh " +
>> nodeMetadata.getCredentials().getUser() +  "@" +
>> nodeMetadata.getPublicAddresses());
>>             System.out.println("BuildNewServerTask Password: " +
>> nodeMetadata.getCredentials().getPassword());
>>         }
>>
>> It fails like this:
>>
>> java.util.ServiceConfigurationError:
>> org.jclouds.providers.ProviderMetadata: Provider
>> org.jclouds.enterprisechef.EnterpriseChefProviderMetadata could not be
>> instantiated
>>     at java.util.ServiceLoader.fail(ServiceLoader.java:224)
>>     at java.util.ServiceLoader.access$100(ServiceLoader.java:181)
>>     at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:377)
>>     at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
>>     at
>> com.google.common.collect.ImmutableCollection$Builder.addAll(ImmutableCollection.java:281)
>>     at
>> com.google.common.collect.ImmutableCollection$ArrayBasedBuilder.addAll(ImmutableCollection.java:360)
>>     at
>> com.google.common.collect.ImmutableSet$Builder.addAll(ImmutableSet.java:508)
>>     at org.jclouds.providers.Providers.all(Providers.java:83)
>>     at org.jclouds.providers.Providers.withId(Providers.java:99)
>>     at org.jclouds.ContextBuilder.newBuilder(ContextBuilder.java:165)
>>     at
>> com.rubenrr.mvc.digitaloceanTests.newDebianJessie(digitaloceanTests.java:104)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     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.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:72)
>>     at
>> org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:81)
>>     at
>> org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:72)
>>     at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
>>     at
>> org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:216)
>>     at
>> org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:82)
>>     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.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:60)
>>     at
>> org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:67)
>>     at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
>>     at
>> org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:162)
>>     at org.junit.runner.JUnitCore.run(JUnitCore.java:160)
>>     at
>> com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:74)
>>     at
>> com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:211)
>>     at
>> com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:67)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at
>> com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
>> Caused by: java.lang.NoClassDefFoundError:
>> org/jclouds/chef/config/BaseChefHttpApiModule
>>     at java.lang.ClassLoader.defineClass1(Native Method)
>>     at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
>>     at
>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>>     at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
>>     at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
>>     at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
>>     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>>     at java.security.AccessController.doPrivileged(Native Method)
>>     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
>>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>>     at
>> org.jclouds.enterprisechef.EnterpriseChefApiMetadata$Builder.<init>(EnterpriseChefApiMetadata.java:65)
>>     at
>> org.jclouds.enterprisechef.EnterpriseChefApiMetadata.<init>(EnterpriseChefApiMetadata.java:44)
>>     at
>> org.jclouds.enterprisechef.EnterpriseChefProviderMetadata$Builder.<init>(EnterpriseChefProviderMetadata.java:62)
>>     at
>> org.jclouds.enterprisechef.EnterpriseChefProviderMetadata.builder(EnterpriseChefProviderMetadata.java:34)
>>     at
>> org.jclouds.enterprisechef.EnterpriseChefProviderMetadata.<init>(EnterpriseChefProviderMetadata.java:43)
>>     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>     at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>>     at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>     at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>>     at java.lang.Class.newInstance(Class.java:379)
>>     at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:373)
>>     ... 41 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.jclouds.chef.config.BaseChefHttpApiModule
>>     at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>>     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>>     at java.security.AccessController.doPrivileged(Native Method)
>>     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
>>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>>     ... 64 more
>>
>> Any idea how to solve this problem ?
>>
>> Regards,
>> Ruben
>>
>

Reply via email to