IT源码网

java之连接 Datomic 数据库时出错

sxdcgaq8080 2024年11月24日 程序员 16 0

我的 datomic 数据库已托管在亚马逊 AWS 服务器上。我有正确的 uri 和 我正在使用 Peer 类连接 datomic 数据库,请找到下面的代码

Peer.connect(uri) 

但我在控制台上遇到以下错误

java.lang.NoSuchMethodError: com.amazonaws.transform.JsonErrorUnmarshaller: method <init>(Ljava/lang/Class;)V not found 
    at com.amazonaws.services.dynamodbv2.model.transform.ProvisionedThroughputExceededExceptionUnmarshaller.<init>(ProvisionedThroughputExceededExceptionUnmarshaller.java:26) 
    at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.init(AmazonDynamoDBClient.java:374) 
    at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.<init>(AmazonDynamoDBClient.java:306) 
    at datomic.ddb$client.invoke(ddb.clj:14) 

我正在使用的依赖项是

<dependency> 
            <groupId>com.datomic</groupId> 
            <artifactId>datomic-pro</artifactId> 
            <version>0.9.5153</version> 
        </dependency> 
        <dependency> 
            <groupId>com.amazonaws</groupId> 
            <artifactId>aws-java-sdk-dynamodb</artifactId> 
            <version>1.11.89</version> 
        </dependency> 

我不明白为什么会出现这个问题。这是任何依赖性问题吗?

谢谢

请您参考如下方法:

Datomic 版本 0.9.5153 目前已经相当旧了(于 2015 年初发布),并且使用了 AWS SDK 版本 1.8.11,因此我怀疑您遇到了依赖项版本不匹配的情况。

自该版本以来,Datomic 进行了多项重要更新,因此我鼓励您尽可能迁移到最新版本 (0.9.5561.62)。

-编码(marshal)


评论关闭
IT源码网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!