Elasticsearch和Java Spring Boot:java.lang.NoSuchMethodError:

Burf2000

所以我试图让我的Spring Boot Web服务与Elasticsearch对话(我有另一个运行的Java应用程序)

我得到的错误是

DependencyException:创建名称为“ searchController”的bean时出错:通过字段“ searchService”表示的不满意的依赖关系;嵌套的异常是org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为“ searchService”的bean时出错:通过字段“ searchRepository”表示的不满足的依赖关系;嵌套的异常是org.springframework.beans.factory.BeanCreationException:创建名称为“ searchRepository”的bean时出错:调用init方法失败;嵌套的异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository]:构造函数抛出了异常;嵌套异常是java.lang.NoSuchMethodError:org.elasticsearch.action.admin.indices.mapping.put。PutMappingRequestBuilder.execute()Lorg / elasticsearch / action / ListenableActionFuture; 2018-10-27 22:18:49.139信息1925--[main] o.apache.catalina.core.StandardService:停止服务[Tomcat]

我的依赖(Gradle)是

compile group: 'org.elasticsearch.plugin', name: 'transport-netty4-client', version: '6.4.2'
    compile group: 'org.elasticsearch.client', name: 'transport', version: '6.4.2'
    compile 'org.elasticsearch:elasticsearch:6.4.2'
    compile('org.springframework.boot:spring-boot-starter-data-elasticsearch')

我的模特

@org.springframework.data.elasticsearch.annotations.Document(indexName = "burf", type = "pages")
data class Result(@Id val handle: String,
                  val url: String,
                  val title: String,
                  val body: String,
                  val meta_description: String?) {

}

设定档

@Configuration
@EnableElasticsearchRepositories(basePackages = arrayOf("com.burfdevelopment.skynet.repository\n"))
@ComponentScan(basePackages = arrayOf("com.burfdevelopment.skynet.service"))
class Config {

    @Value("\${elasticsearch.home:/usr/local/Cellar/elasticsearch}")
    private val elasticsearchHome: String? = null

    @Value("\${elasticsearch.cluster.name:skynet}")
    private val clusterName: String? = null

    @Bean
    fun client(): Client {
        val settings = Settings.builder()
                .put("cluster.name", clusterName).build()

        return PreBuiltTransportClient(settings).addTransportAddress(TransportAddress(InetAddress.getByName("192.168.0.100"), 9300))
    }

    @Bean
    fun elasticsearchTemplate(): ElasticsearchOperations {
        return ElasticsearchTemplate(client())
    }
}

资料库

interface SearchRepository : ElasticsearchRepository<Result, String>  {

    fun findByTitle(name: String, pageable: Pageable): Page<Result>
}

有人知道怎么了吗?

安迪·威尔金森

您正在使用的Spring Boot版本使用与Elasticsearch 6.4不兼容的Spring Data Elasticsearch版本。

为了确保使用兼容版本,请从Elasticsearch依赖项中删除该版本,并允许Spring Boot的依赖项管理来控制该版本。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Spring Boot:处理程序调度失败;嵌套的异常是java.lang.NoSuchMethodError

在Spring Boot应用程序中使用Rackspace时的Apache jclouds java.lang.NoSuchMethodError

Spring Boot Hibernate错误java.lang.NoSuchMethodError:javax.persistence.JoinColumn.foreignKey()Ljavax / persistence / ForeignKey;

Spring Boot:MongoDb:异常:NoSuchMethodError:com.mongodb.client.MongoCollection.insertOne(java.lang.Object)

MockWebServer:java.lang.NoSuchMethodError

LocationManager:java.lang.NoSuchMethodError

java.lang.NoSuchMethodError: DefaultPlexusContainer

java.lang.NoSuchMethodError: putMemberOffset

使用spring-kafka 2.1.0和SpringBoot 1.5.9的Kafka Consumer上的java.lang.NoSuchMethodError

spring-kafka 2.0.x kafka .11和spring-boot 2.0.0.RELEASE兼容性问题:java.lang.NoSuchMethodError

Spring Boot 2.2.4 升级后报错:scala error: "java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object;)[Ljava/lang/Object;"

Java:ucanaccess hsqldb java.lang.NoSuchMethodError:

Java“ java.lang.NoSuchMethodError:main”

Spring-java.lang.NoSuchMethodError:org.springframework.web.accept.ContentNegotiationManager.getStrategies()Ljava / util / List ;?

线程“主”中的Spring引导异常java.lang.NoSuchMethodError:org.springframew ..(版本问题)

使用异常 java.lang.NoSuchMethodError: BeanDefinitionParserDelegate.getEnvironment() 调用先前版本的 Spring

Spring java.lang.NoSuchMethodError:org.springframework.expression.games.PlayParserConfiguration

SPRING java.lang.NoSuchMethodError:添加石英计划后的org.springframework.expression.spel.SpelParserConfiguration

java.lang.NoSuchMethodError错误:com.fasterxml.jackson.databind.ObjectWriter.forType [Jasperreports] [Spring MVC]

Spring Jersey-java.lang.NoSuchMethodError:javax.ws.rs.core.Application.getProperties()Ljava / util / Map

spring-data-envers Hibernate java.lang.NoSuchMethodError:org.hibernate.engine.spi.SessionImplementor.getTransactionCoordinator

Spring框架MVC-休眠异常是java.lang.NoSuchMethodError

收到错误 - java.lang.NoSuchMethodError:

播放json 2.7.1:java.lang.NoSuchMethodError

Kotlin:测试中的java.lang.NoSuchMethodError

ActorSystem(“ MySystem”)抛出java.lang.NoSuchMethodError

Apache Spark:java.lang.NoSuchMethodError .rddToPairRDDFunctions

编译jar时java.lang.NoSuchMethodError

编译时出现java.lang.NoSuchMethodError