web-dev-qa-db-fra.com

org.elasticsearch.common.transport.InetSocketTransportAddress introuvable sur Elasticsearch 6

Mon code fonctionne très bien dans elasticsearch 5 mais quand je suis passé de 5 à 6 alors. ça montre

org.elasticsearch.common.transport.InetSocketTransportAddress not found

trace complète de la pile:

[ERROR] Failed to execute goal org.Apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project elastic-store: Compilation failure
[ERROR] /home/elastic/elastic-store/src/main/Java/com/qw/psence/store/es/common/ESClient.Java:[12,42] cannot find symbol
[ERROR] symbol:   class InetSocketTransportAddress
[ERROR] location: package org.elasticsearch.common.transport
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.Apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]

quelqu'un peut-il m'aider à résoudre ce problème?

Remarque: le pot Elaticsearch est très bien.

14
Arayan Singh

Elastic search 6.0 a supprimé InetSocketTransportAddress classe. J'ai résolu ce problème en remplaçant la classe InetSocketTransportAddress par la classe TransportAddress.

// on startup

TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
        .addTransportAddress(new TransportAddress(InetAddress.getByName("Host1"), 9300))
        .addTransportAddress(new TransportAddress(InetAddress.getByName("Host2"), 9300));

// on shutdown

client.close();
28
Arayan Singh

Il existe de nombreuses solutions au problème, mais j'obtenais cette erreur car, alors que j'essayais de faire une configuration de base elasticsearch avec SpringBoot:

j'ai oublié de lancer elasticsearch ...

: facepalm:

Donc, juste:

  1. ouvrir la ligne de commande dans le dossier bin dans votre répertoire d'installation Elasticsearch *
  2. tapez elasticsearch
  3. appuyez sur Entrée

Pour vous assurer que cela fonctionne, ouvrez http://localhost:9200/ dans votre navigateur. Vous devriez obtenir une réponse JSON contenant le nom, le nom du cluster, la version elasticsearch, etc.

* (Sous Windows) Ouvrez ES_INSTALLATION_DIR\elasticsearch-x.x.x\bin dossier, maintenez la touche Maj enfoncée, cliquez avec le bouton droit sur la zone du dossier et dans le menu déroulant, sélectionnez Open command window here.

0
Filip Savic