Проблемы с Cassandra Proof of concept: Исключение — com.datastax.driver.core.DataType.asJavaClass()Ljava/lang/Class;

Я пытаюсь проверить несколько доказательств концепций для данных временных рядов. Я взял образец с весеннего веб-сайта и настроил его на eclipse.

Ниже приведены некоторые подробности:

Версия Cassandra** — 3.0.9 Версия Spring data cassandra — 1.0.0.RELEASE DataStax ядро ​​драйвера java — cassandra-driver-core-3.1.2

Я выполняю следующий код:

Cluster cluster = Cluster.builder().addContactPoints("127.0.0.1").withPort(9042).build();
          Session session = cluster.connect("axiaglobal");
       CassandraOperations cassandraOps = new CassandraTemplate(session);

       cassandraOps.insert(new Person("1234567890", "David", 40));

и Person.java ниже:

@Table
public class Person {
 @PrimaryKey
 private String id;

 private String name;
 private int age;

 public Person(String id, String name, int age) {
  this.id = id;
  this.name = name;
  this.age = age;
 }

 public String getId() {
  return id;
 }

 public String getName() {
  return name;
 }

 public int getAge() {
  return age;
 }

 @Override
 public String toString() {
  return "Person [id=" + id + ", name=" + name + ", age=" + age + "]";
 }

}

При выполнении кода я получаю следующее исключение:

Exception in thread "main" java.lang.NoSuchMethodError: com.datastax.driver.core.DataType.asJavaClass()Ljava/lang/Class;
    at org.springframework.data.cassandra.mapping.CassandraSimpleTypeHolder.<clinit>(CassandraSimpleTypeHolder.java:62)
    at org.springframework.data.cassandra.mapping.BasicCassandraMappingContext.<init>(BasicCassandraMappingContext.java:73)
    at org.springframework.data.cassandra.convert.MappingCassandraConverter.<init>(MappingCassandraConverter.java:77)
    at org.springframework.data.cassandra.core.CassandraTemplate.<init>(CassandraTemplate.java:75)
    at com.axia.global.dao.cassandra.service.CassandraApp.main(CassandraApp.java:26)

Может кто-нибудь, пожалуйста, помогите мне с предложениями или указателями?


person vaski thakur    schedule 16.12.2016    source источник
comment
Обновите до Spring Data Cassandra 1.5.0 M1 (также spring-cql).   -  person mp911de    schedule 16.12.2016
comment
Он не работал и имел некоторые другие проблемы. Я отказался от идеи использования spring-cassandra-data и вместо этого использовал драйверы datastax, которые, кажется, работают нормально. Спасибо за ваш ответ.   -  person vaski thakur    schedule 17.12.2016


Ответы (1)


измените файл pom, как показано ниже, решил мою проблему:

<dependency>
        <groupId>org.cassandraunit</groupId>
        <artifactId>cassandra-unit-spring</artifactId>
        <version>3.1.1.0</version>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.cassandraunit</groupId>
                <artifactId>cassandra-unit</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.cassandraunit</groupId>
        <artifactId>cassandra-unit</artifactId>
        <classifier>shaded</classifier>
        <version>3.1.1.0</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>3.1.1</version>
        <optional>true</optional>
        <!--<exclusions>-->
        <!--<exclusion>-->
        <!--<groupId>com.google.guava</groupId>-->
        <!--<artifactId>guava</artifactId>-->
        <!--</exclusion>-->
        <!--</exclusions>-->
    </dependency>
person lxwde    schedule 25.05.2018