代码之家  ›  专栏  ›  技术社区  ›  Abzelhan

原因:java.lang.ClassNotFoundException:org.elasticsearch.transport.netty3plugin

  •  5
  • Abzelhan  · 技术社区  · 6 年前

    org.elasticsearch.client.Client .我的代码:

    Client client = new PreBuiltTransportClient(Settings.builder()
                    .put("cluster.name", clustername)
                    .build())
                    .addTransportAddress(
    new InetSocketTransportAddress(InetAddress.getByName(host), port)
    );
    

    Caused by: java.lang.NoClassDefFoundError: org/elasticsearch/transport/Netty3Plugin
    at org.elasticsearch.transport.client.PreBuiltTransportClient.<clinit>(PreBuiltTransportClient.java:91) ~[transport-5.6.10.jar:5.6.10]
    at kz.icode.idmatrix.config.ElasticsearchConfiguration.client(ElasticsearchConfiguration.java:56) ~[classes/:na]
    at kz.icode.idmatrix.config.ElasticsearchConfiguration$$EnhancerBySpringCGLIB$$7e53ae93.CGLIB$client$0(<generated>) ~[classes/:na]
    at kz.icode.idmatrix.config.ElasticsearchConfiguration$$EnhancerBySpringCGLIB$$7e53ae93$$FastClassBySpringCGLIB$$fef36179.invoke(<generated>) ~[classes/:na]
    at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) ~[spring-core-5.0.7.RELEASE.jar:5.0.7.RELEASE]
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:361) ~[spring-context-5.0.7.RELEASE.jar:5.0.7.RELEASE]
    at kz.icode.idmatrix.config.ElasticsearchConfiguration$$EnhancerBySpringCGLIB$$7e53ae93.client(<generated>) ~[classes/:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_171]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_171]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_171]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_171]
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.0.7.RELEASE.jar:5.0.7.RELEASE]
    ... 99 common frames omitted
    

    org.elasticsearch:elasticsearch:5.6.10 org.elasticsearch.client:client:5.6.10

    1 回复  |  直到 5 年前
        1
  •  13
  •   A. Alencar greenkode    5 年前

    不是所有依赖项都只通过添加 spring-boot-starter-data-elasticsearch

    必须明确定义所有剩余的依赖项:

        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>transport</artifactId>
            <version>${elasticsearch.version}</version>
        </dependency>
    
        <dependency>
            <groupId>org.elasticsearch.plugin</groupId>
            <artifactId>transport-netty4-client</artifactId>
            <version>${elasticsearch.version}</version>
        </dependency>
    

    <version>