我有一些连接到JClouds快速存储容器的代码,它在自己的测试区域运行良好,但是一旦集成到我的项目中,我就会得到一个错误:
线程“java.util.ServiceConfigurationError: org.jclouds.apis.ApiMetadata: Provider”中的异常无法实例化: java.lang.IllegalStateException: java.lang.reflect.InvocationTargetException
这是在ContextBuilder行上失败的代码:
private SwiftApi swiftApi;
public JCloudsConnector(String username, String password, String endpoint) {
String provider = "openstack-swift";
Properties overrides = new Properties();
overrides.setProperty("jclouds.mpu.parallel.degree", "" + Runtime.getRuntime().availableProcessors());
swiftApi = ContextBuilder.newBuilder(provider)
.endpoint(endpoint)
.credentials(username, password)
.overrides(overrides)
.buildApi(SwiftApi.class);
}我使用的是相同的依赖项(JClouds版本1.7.3),因此我无法理解问题可能是什么,因为两者都运行在相同的环境中。
发布于 2014-08-04 16:12:20
由于Ignasi Barrera,我能够通过在maven POM文件中为Guava 15.0添加一个条目来对其进行排序:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>15.0</version>
</dependency>https://stackoverflow.com/questions/25121530
复制相似问题