5 votes

Vous devez définir la variable ES_CLASSPATH

J'ai elasticsearch qui fonctionne très bien en local. Eh bien, il est temps de le mettre sur mon serveur. Chaque fois que j'essaie de l'exécuter sur le serveur, j'obtiens "You must set the ES_CLASSPATH var". Pour autant que je sache, ES_CLASSPATH est défini. Google montre une poignée de résultats, mais rien ne fonctionne pour moi.

Une idée de ce qui pourrait ne pas fonctionner lorsque j'essaie de lancer elasticsearch ? J'utilise la version 5.0.0, mais les tentatives avec les versions précédentes donnent la même erreur.

3voto

Rajind Ruparathna Points 1340

J'ai pu reproduire facilement le problème. J'ai essayé de supprimer simplement elasticsearch.in.sh script du répertoire ES_HOME/bin, puis j'ai essayé d'exécuter ./elasticsearch à partir du répertoire ES_HOME/bin. J'ai obtenu,

You must set the ES_CLASSPATH var

Le fichier elasticsearch.in.sh contient la configuration de ce chemin de classe. Veuillez donc vous assurer que vous avez elasticsearch.in.sh dans le répertoire ES_HOME/bin.

Selon ./elasticsearch script, le fichier elasticsearch.in.sh est recherché à tous les endroits suivants. Donc, le placer dans l'un des endroits suivants serait parfait.

/usr/share/elasticsearch/elasticsearch.in.sh
/usr/local/share/elasticsearch/elasticsearch.in.sh
/opt/elasticsearch/elasticsearch.in.sh 
~/.elasticsearch.in.sh
"$ES_HOME/bin/elasticsearch.in.sh"

Veuillez noter que ES_HOME est le répertoire d'installation de base d'elasticsearch.

Contenu du fichier elasticsearch.in.sh pour votre référence.

#!/bin/bash

# check in case a user was using this mechanism
if [ "x$ES_CLASSPATH" != "x" ]; then
    cat >&2 << EOF
Error: Don't modify the classpath with ES_CLASSPATH. Best is to add
additional elements via the plugin mechanism, or if code must really be
added to the main classpath, add jars to lib/ (unsupported).
EOF
    exit 1
fi

ES_CLASSPATH="$ES_HOME/lib/elasticsearch-5.0.0.jar:$ES_HOME/lib/*"

Notez qu'il définit ES_CLASSPATH.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X