2017-04-05 1 views
0

저는 ElasticSearch Java API를 사용하여 새로 왔으며 인스턴스와의 연결을 만들고 싶습니다. ElasticSearch : 설정 전송 클라이언트

내가 여기 지시 사항을 준수 : getting started

그래서 나는 다음과 같은 코드를 얻을 :

TransportClient mClient = new PreBuiltTransportClient(Settings.EMPTY) 
      .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 
        9300)); 

하지만 클래스를 가져 오기에 대한 문제에 직면하고있어합니다 (exemple에로 간단하게!)

<dependency> 
    <groupId>org.elasticsearch</groupId> 
    <artifactId>elasticsearch</artifactId> 
    <version>5.3.0</version> 
</dependency> 
<dependency> 
    <groupId>org.elasticsearch.client</groupId> 
    <artifactId>transport</artifactId> 
    <version>5.3.0</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-api</artifactId> 
    <version>2.7</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-core</artifactId> 
    <version>2.7</version> 
</dependency> 
: TransportClient 및 설정, Eclipse를 찾을 수 없습니다 ... 여기

은 받는다는 가져 오기입니다

이 문제를 조사하려고했지만 해결책을 찾지 못했습니다. Eclipse가 PreBuiltTransportClient에 문제없이 발견되었습니다. 티

[INFO] 
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ poc --- 
[INFO] fr.consortnt:poc:war:0.0.1-SNAPSHOT 
[INFO] +- junit:junit:jar:3.8.1:test 
[INFO] +- javax:javaee-web-api:jar:6.0:provided 
[INFO] +- org.elasticsearch.client:transport:jar:5.3.0:compile 
[INFO] | +- org.elasticsearch:elasticsearch:jar:5.3.0:compile 
[INFO] | | +- org.apache.lucene:lucene-core:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-analyzers-common:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-backward-codecs:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-grouping:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-highlighter:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-join:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-memory:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-misc:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-queries:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-queryparser:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-sandbox:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-spatial:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-spatial-extras:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-spatial3d:jar:6.4.1:compile 
[INFO] | | +- org.apache.lucene:lucene-suggest:jar:6.4.1:compile 
[INFO] | | +- org.elasticsearch:securesm:jar:1.1:compile 
[INFO] | | +- net.sf.jopt-simple:jopt-simple:jar:5.0.2:compile 
[INFO] | | +- com.carrotsearch:hppc:jar:0.7.1:compile 
[INFO] | | +- joda-time:joda-time:jar:2.9.5:compile 
[INFO] | | +- org.yaml:snakeyaml:jar:1.15:compile 
[INFO] | | +- com.fasterxml.jackson.core:jackson-core:jar:2.8.6:compile 
[INFO] | | +- com.fasterxml.jackson.dataformat:jackson-dataformat-smile:jar:2.8.6:compile 
[INFO] | | +- com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.8.6:compile 
[INFO] | | +- com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:jar:2.8.6:compile 
[INFO] | | +- com.tdunning:t-digest:jar:3.0:compile 
[INFO] | | +- org.hdrhistogram:HdrHistogram:jar:2.1.6:compile 
[INFO] | | \- net.java.dev.jna:jna:jar:4.2.2:compile 
[INFO] | +- org.elasticsearch.plugin:transport-netty3-client:jar:5.3.0:compile 
[INFO] | | \- io.netty:netty:jar:3.10.6.Final:compile 
[INFO] | +- org.elasticsearch.plugin:transport-netty4-client:jar:5.3.0:compile 
[INFO] | | +- io.netty:netty-buffer:jar:4.1.7.Final:compile 
[INFO] | | +- io.netty:netty-codec:jar:4.1.7.Final:compile 
[INFO] | | +- io.netty:netty-codec-http:jar:4.1.7.Final:compile 
[INFO] | | +- io.netty:netty-common:jar:4.1.7.Final:compile 
[INFO] | | +- io.netty:netty-handler:jar:4.1.7.Final:compile 
[INFO] | | +- io.netty:netty-resolver:jar:4.1.7.Final:compile 
[INFO] | | \- io.netty:netty-transport:jar:4.1.7.Final:compile 
[INFO] | +- org.elasticsearch.plugin:reindex-client:jar:5.3.0:compile 
[INFO] | | \- org.elasticsearch.client:rest:jar:5.3.0:compile 
[INFO] | |  +- org.apache.httpcomponents:httpclient:jar:4.5.2:compile 
[INFO] | |  +- org.apache.httpcomponents:httpcore:jar:4.4.5:compile 
[INFO] | |  +- org.apache.httpcomponents:httpasyncclient:jar:4.1.2:compile 
[INFO] | |  +- org.apache.httpcomponents:httpcore-nio:jar:4.4.5:compile 
[INFO] | |  +- commons-codec:commons-codec:jar:1.10:compile 
[INFO] | |  \- commons-logging:commons-logging:jar:1.1.3:compile 
[INFO] | +- org.elasticsearch.plugin:lang-mustache-client:jar:5.3.0:compile 
[INFO] | | \- com.github.spullara.mustache.java:compiler:jar:0.9.3:compile 
[INFO] | \- org.elasticsearch.plugin:percolator-client:jar:5.3.0:compile 
[INFO] +- org.apache.logging.log4j:log4j-api:jar:2.7:compile 
[INFO] +- org.apache.logging.log4j:log4j-core:jar:2.7:compile 
[INFO] +- taglibs:standard:jar:1.1.2:compile 
[INFO] +- jstl:jstl:jar:1.2:runtime 
[INFO] +- org.postgresql:postgresql:jar:9.4.1212:compile 
[INFO] \- org.hibernate:hibernate-entitymanager:jar:4.2.15.Final:compile 
[INFO] +- org.jboss.logging:jboss-logging:jar:3.1.0.GA:compile 
[INFO] +- dom4j:dom4j:jar:1.6.1:compile 
[INFO] +- org.javassist:javassist:jar:3.18.1-GA:compile 
[INFO] +- org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:jar:1.0.1.Final:compile 
[INFO] +- org.hibernate.javax.persistence:hibernate-jpa-2.0-api:jar:1.0.1.Final:compile 
[INFO] +- org.hibernate.common:hibernate-commons-annotations:jar:4.0.2.Final:compile 
[INFO] \- org.hibernate:hibernate-core:jar:4.2.15.Final:compile 
[INFO]  \- antlr:antlr:jar:2.7.7:compile 

일어나는 일에 대해 어떤 생각 : 여기

은 MVN 의존성의 결과인가? 나는 필요한 클래스 중 일부를 elasticsearch에서 가져올 수 있기 때문에 maven 구성에서 문제가되지 않는다고 확신합니다 ...

미리 감사드립니다!

답변

0

저는 몇 년 동안 은식 사용자가 아니지만 이클립스/메이븐 구성 문제처럼 보입니다. 따라서 eclipse configuration with maven을 검토하는 것이 좋습니다. 당신의 org.elasticsearch (첫 번째를 추가 할 필요가 없습니다

<dependency> 
     <groupId>org.elasticsearch.client</groupId> 
     <artifactId>transport</artifactId> 
     <version>${elasticsearch.version}</version> 
    </dependency> 
    <!-- Log Dependencies required by elasticsearch 5 --> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-api</artifactId> 
     <version>${log4j.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-core</artifactId> 
     <version>${log4j.version}</version> 
    </dependency> 

주의 사항 :

나는 응용 프로그램이 다음 받는다는 종속성 구성 작업이 있기 때문에이 구성 문제라고 귀하의 목록) 종속성이 elasticsearch embedded which is not supported anymore을 실행할 때 사용되었지만 이것이 가능하다면 클라이언트의 경우에는 첫 번째 종속성이 필요하지 않습니다.

P.S - Eclipse/Maven 구성이 맞다면 앱을 실행하기 전에 mvn clean install을 잊어 버린 것일까 요?

+1

구성이 훌륭합니다. PostGreSQL 클래스 또는 다른 것들을 가져 오는 데 아무런 문제가 없습니다. PrebuiltTransportClient를 아무 문제없이 올바르게 가져옵니다. mvn clean install은 누락 된 TransportClient 때문에 실패한 것을 반환합니다. – Aeldred

관련 문제