java - 创建JClouds SwiftApi时出错:提供程序org.jclouds.openstack.keystone.v2_0.KeystoneApiMetadata无法实例化

我有一些代码可以连接到jclouds swift存储容器,该容器在其自己的测试区域中运行良好,但是一旦我集成到我的项目中,就会得到一个错误:
线程“main”java.util.Serviceconfigurationerror中出现异常:
org.jclouds.api.apimetadata:提供程序
org.jclouds.openstack.keystone.v2_0.keystoneapimetadata无法
实例化: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版),因此我无法理解问题可能是什么,因为两者都在同一环境中运行。

最佳答案

多亏了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/

网站遵循 CC BY-SA 4.0 协议,转载或引用请注明出处。

标签 java jclouds


相关文章:

java - 有时间限制可运行

java - 我可以获取对象的基类的功能作为接口创建

java - 错误jdbc.HiveConnection:打开会话Hive时出错

java - 从jclouds 1.5迁移到1.7后,机架空间cloudfiles引发ContainerNotFoundException

java - JClouds:BlobStore.getBlob()需要很长时间

java - 上限通配符(扩展名)不起作用; ArrayList <?扩展SuperType>不允许子类型的实例[重复]

java - libGdx-尝试使用libgdx.g3d加载obj模型时出现黑屏

java - 获取OpenStack Nova实例的标签列表

java - 带有GetOptions的Apache Jclouds BlobStore getBlob

java - JClouds和OpenStack:IllegalStateException:预期为BEGIN_ARRAY,但为STRING