web-dev-qa-db-ja.com

ElasticSearchおよびJava環境変数

Windows 7では、32ビット版と64ビット版の両方でJDKをインストールしました。 4つのインストールすべてについて、バージョンは8、更新20です。 http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html

elasticsearchをダウンロードして解凍し、/ bin/service.batまたは/bin/elasticsearch.batファイルを実行すると、ターミナルにアクセスできます。

Java_HOME environment variable must be set! Press any key to continue . . .

すると、ターミナルが閉じます。

アンインストールして再インストールしましたが、修正されませんでした。環境変数が設定されないのはなぜですか?インストールの問題ですか、それとも実際に手動で変数を設定する必要がありますか?正しくインストールされていれば、変数が自動的に設定されるようです...助けてください。ありがとう

これを使用して、Java_HOME環境変数を手動で設定しました。

https://confluence.atlassian.com/display/DOC/Setting+the+Java_HOME+Variable+in+Windows

私のパスはC:\Progra~1\Java\jdk1.8.0_20\jreです

さて、service.batを実行すると、ターミナルは開くとすぐに閉じます。 elasticsearch.batを実行すると、端末はいくつかの行を出力しますが、しばらくするとそこにとどまり、何も入力できません。


編集:

すべてのJavaをアンインストールし、JRE 64ビットのみを再インストールし、システム環境変数をJava_HOMEおよび `C:\ Progra〜1\Java\jre1.8.0_20に設定しました

32ビットに設定されたCLASSPATHがあることを発見しました。古いJavaバージョンです。その変数を削除する必要がありますか?

32
ahnbizcad

ステップ1

確認できますかJava_HOME に設定されています C:\Progra~1\Java\jdk1.8.0_20

C:\>echo %Java_HOME%

また、Javaコマンドが使用可能であることを確認します、

 Java -version

参照

バッチスクリプトを使用してJava_HOMEが環境に存在するかどうかを確認

ステップ2

Java_HOMEが設定されていません。ここに記載されている手順に従ってください- 設定方法Java Windowsのホーム

概要

  • デスクトップのマイコンピュータアイコンを右クリックし、[プロパティ]を選択します。
  • [詳細設定]タブをクリックします。 Environment Variablesボタンをクリックします。 [システム変数]で、[New]をクリックします。
  • 変数名をJava_HOMEとして入力します。
  • JDKのインストールパスとして変数値を入力します。

    (例:C:\Progra~1\Java\jdk1.8.0_20)。

  • OKをクリックします。
  • 変更の適用をクリックします。
53
prayagupd

環境変数を設定する権限がない場合の回避策:

elasticsearch.batファイルを開き、

a)行を削除します。

if NOT DEFINED Java_HOME goto err

b)%Java_HOME%をJava jdkパス、C:\ Program Files\Java\jdk1.7.0_51のようなものに置き換えます

そして、あなたの端末が起動し、何も入力できない場合、それはelasticsearchサーバーです。cygwinのようなクライアントを使用してそれに接続する必要があります。

https://cygwin.com/install.html

サーバーへの接続については、elasticsearchのドキュメントを参照してください。

http://www.elasticsearch.org/guide/

同様の質問がすでに回答されています。

「Java_HOMEは、エラスティック検索のサービスインストールコマンドで無効なJavaインストールの問題」を指します

4
BatScream

以下のコマンドを実行します。

set Java_HOME=C:\Program Files\Java\jre8

Java homeは既に設定されているが、それでもエラーがスローされていました。elasticsearch-plugin.batファイルを開き、「IF DEFINED Java_HOME」を「IF DEFINED%Java_HOME%」に変更Javaホームが既に設定されている場合。

ありがとう

2
Vijay Sutaria

これはかなり一般的なエラーです。Java_HOME環境が設定されていません。そのため、より目立つように設定する必要があります。 binディレクトリではなくjreディレクトリへのパスを求めているもの、つまりJava elasticsearchを設定および実行するための環境パス。 t binディレクトリをパスに指定したら、elasticsearchを実行すると、デフォルトのポート9200で稼働します。

1
mohan08p

システム全体の環境変数を設定するには、[スタート]ボタンをクリックし、[コンピューター]をポイントして、右クリックしてプロパティを選択します。次に、「システムの詳細設定」をクリックし、「詳細設定」タブを押して「環境変数」ボタンを選択します。これにより、Java_HOME変数。これは、現在のユーザー(トップボックス)またはシステム全体に対して行うことができます。

Environment variables dialog

これを実行した後、新しいcmdウィンドウを開き([スタート]メニューから「cmd」と入力してEnterキーを押します)、Java_HOMEは上記の質問のように設定されます。

1
breght

%Java_HOME%環境変数を設定した後でも、実行できませんでした。私にとっての問題は、管理者としてelasticsearch.batファイルを実行する必要がありましたでした。これで問題が修正されました。

0
Ivan Yurchenko

を参照してください、あなたは以下を行うだけです:(すでに設定されている環境変数を削除しないでください)

  • ステップ1:\ binにあるelasticsearch-service.batを編集します
  • ステップ2:冒頭に以下の行を追加(@echoの下)SET Java_HOME = C:\ Program Files\Java\jdk1.8.0_162(または、Javaパス)
  • ステップ3:同じファイルで%% Java_HOME %%を見つけて、%Java_HOME%に置き換えます
  • ステップ4:次に、binフォルダーのcmdからelasticsearch-service.bat installを実行します
  • ステップ5:それで、cmdからelasticsearch-serviceを実行するだけで実行されます。
0
Ankit Saxena

Powershellを使用していて、environment variableが表示されなかったため、このエラーが発生します。 (方法はわかりません)その後、CMDを使用し、正常に実行されました。

0
Rodolfo Luna