2016-10-28 20 views
4

elasticsearchをローカルで正常に実行しています。さて、それを私のサーバーに入れてみましょう。私がサーバー上で実行しようとするたびに、私は "ES_CLASSPATH varを設定する必要があります。"私が知る限り、ES_CLASSPATHが設定されています。 Googleはいくつかの結果を示していますが、私にとっては何の効果もありません。ES_CLASSPATHを設定する必要があります。var

elasticsearchを起動しようとすると何がうまくいかないかについてのアイデアはありますか?バージョン5.0.0を使用していますが、以前のバージョンでは同じエラーが発生しています。

+0

DId Javaバージョンを確認しましたか? ESにはJava 8が必要です。 –

答えて

2

私は簡単に問題を再現できました。 ES_HOME/binディレクトリからelasticsearch.in.shスクリプトを削除して、ES_HOME/binディレクトリから./elasticsearchを実行しようとしました。私は、

You must set the ES_CLASSPATH var 

elasticsearch.in.shファイルにはこのクラスパスの設定が含まれています。ですので、elasticsearch.in.shファイルがES_HOME/binディレクトリにあることを確認してください。

./elasticsearchスクリプトによると、このelasticsearch.in.shファイルは次のすべての場所で検索されます。次の場所のいずれかに配置すると問題ありません。

/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" 

ES_HOMEはelasticsearchの基本インストールディレクトリです。

参考までにelasticsearch.in.shファイルの内容。

#!/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/*" 

それはES_CLASSPATHを設定していることに注意してください。

+1

フォルダにアクセス権の問題が発生しましたが、これは間違いなく適切な場所にファイルを見ていないということです。 –

+0

シェルスクリプトファイルは、.batファイルとまったく同じフォルダにすべての権限があります。私はzipパッケージをWindowsのC:rootに展開しました。まだこのエラーメッセージが表示されます – jonhue

関連する問題