什么是springdatadynamodb和springboot的兼容版本

mtb9vblg  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(334)

我在服务器启动时收到此警告。

  1. INFO 13868 --- s.DynamoDBRepositoryFactory : Spring Data Version: 2.3.7.RELEASE
  2. INFO 13868 --- s.DynamoDBRepositoryFactory : AWS SDK Version: 1.11.64
  3. INFO 13868 --- s.DynamoDBRepositoryFactory : Java Version: 11.0.7 - Java HotSpot(TM) 64-Bit Server VM 11.0.7+8-LTS
  4. INFO 13868 --- s.DynamoDBRepositoryFactory : Platform Details: Windows 10 10.0
  5. WARN 13868 --- s.DynamoDBRepositoryFactory : This Spring Data DynamoDB implementation might not be compatible with the available Spring Data classes on the classpath!

https://github.com/boostchicken/spring-data-dynamodb
这就是gradle依赖。

  1. plugins {
  2. id("org.springframework.boot") version "2.4.3"
  3. id("io.spring.dependency-management") version "1.0.11.RELEASE"
  4. id("com.google.cloud.tools.jib") version "2.7.1"
  5. id("com.github.jk1.dependency-license-report") version "1.16"
  6. id("java")
  7. }
  8. java.sourceCompatibility = JavaVersion.VERSION_11
  9. dependencies {
  10. implementation 'org.springframework.boot:spring-boot-starter-web'
  11. implementation 'com.amazonaws:aws-java-sdk-dynamodb:1.11.970'
  12. //implementation 'com.github.derjust:spring-data-dynamodb:5.1.0'
  13. implementation 'io.github.boostchicken:spring-data-dynamodb:5.2.5'
  14. compileOnly 'org.projectlombok:lombok'
  15. developmentOnly 'org.springframework.boot:spring-boot-devtools'
  16. annotationProcessor 'org.projectlombok:lombok'
  17. testImplementation('org.springframework.boot:spring-boot-starter-test') {
  18. exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
  19. }
  20. }

当我在get方法上使用@dynamodbrangekey时,我得到的是classnotfoundexception。服务器未启动。如果我不使用@dynamodbrangekey,那么服务器的声明是正确的。但是我必须使用@dynamodbrangekey来指定范围键。

  1. @DynamoDBTable(tableName = "partner_signup")
  2. public class PartnerSignup {
  3. @Id
  4. //@DynamoDBIgnore
  5. private ProductSignupId productSignupId;
  6. private String partnerId;
  7. private String partnerType;
  8. //@DynamoDBAttribute(attributeName = "partner_type")
  9. @DynamoDBRangeKey(attributeName = "partner_type")
  10. public String getPartnerType() {
  11. System.out.println(" partner_type " + productSignupId.getPartnerType());
  12. return productSignupId != null ? productSignupId.getPartnerType() : null;
  13. }
  14. }
  15. Caused by: java.lang.ClassNotFoundException: org.springframework.data.repository.core.support.ReflectionEntityInformation
  16. at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) ~[na:na]
  17. at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) ~[na:na]
  18. at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na]

需要在依赖项中添加或修改什么吗?什么是springdatadynamodb和springboot的兼容版本。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题