2015-05-24 21 views
11

Ho scaricato Logstash-1.5.0 su Windows 8.1 e ho provato a eseguirlo nel prompt dei comandi.Impossibile individuare l'errore di installazione java per logstash

Prima ho controllato la versione java. poi cambiato la directory logstash-1.5.0/bin poi entrato il comando logstash -e 'input { stdin { } } output { elasticsearch { host => localhost } stdout { } }' ha dato il seguente errore:

Cannot locate java installation, specified by JAVA_HOME

La cartella Logstash è su C: e la versione di Java è 1.7.0_25. Ho impostato le variabili ambientali JAVA_HOME nella directory jdk/bin, ma ancora non funziona.

Sono nuovo a Logstash. Qualcuno può dirmi in dettaglio perché questo accade e aiutarmi a risolverlo?

+0

'JAVA_HOME' dovrebbe puntare alla directory sopra' bin/'. – Qix

+0

possibile duplicato di [Come impostare java \ _home su Windows 7?] (Http://stackoverflow.com/questions/2619584/how-to-set-java-home-on-windows-7) – Qix

risposta

12

Impostare i JAVA_HOME e PATH variabili ambientali come questo:

JAVA_HOME = C:\Program Files\Java\jdk1.7.0_25 
PATH = C:\Program Files\Java\jdk1.7.0_25\bin 
+0

Grazie a @Razib. –

+1

È persino possibile dichiarare JAVA_HOME nello stesso modo all'interno di cygwin. Non è necessario utilizzare il percorso/cygdrive. – klimpergeist

+0

Sono sorpreso che sia necessario * entrambe * variabili d'ambiente (sia 'JAVA_HOME' che' PATH'?). Ma, logstash dice: 'Usando JAVA_HOME = C: \ ProgramData \ Oracle \ Java \ javapath \ java.exe recuperato da PATH' - quindi suppongo che PATH sia importante! Allora perché è necessario anche 'JAVA_HOME'? –

1

Su Windows quando si modifica l'ambiente tramite le impostazioni di sistema, è necessario chiudere e riaprire la shell dei comandi, prima che le modifiche abbiano effetto.

Passo dopo passo:

  1. individuare la directory di installazione di Java JRE che si desidera utilizzare. Ad esempio: "C: \ Programmi \ Java \ jre7"
  2. Aprire il menu di avvio con il tasto destro del mouse sul computer e selezionare le impostazioni. Nella finestra delle impostazioni di sistema, sul lato destro, fare clic su "Extended Systemsettings".
  3. Nella scheda Estesa selezionare le variabili di ambiente, aggiungere la variabile JAVA_HOME al percorso e premere OK.
  4. Aprire la shell dei comandi e verificare l'ambiente inserendo "set" e premere invio. Guarda se è impostato JAVA_HOME.

Se il vostro JAVA_HOME è ora impostato correttamente, logstash dovrebbe funzionare.

+0

Su Windows, solo usare SET in un file batch renderà le cose più facili senza dover modificare la configurazione del sistema –

+0

Buon punto sul riavvio del prompt dei comandi! Questo ha risolto il mio problema. –

2

Nel mio caso il problema era che ho impostato la variabile JAVA_HOME con uno spazio alla fine:

"set JAVA_HOME=c:\Programs\Java " 

invece di

"set JAVA_HOME=c:\Programs\Java" 

E logstash c non lo capirebbe :) La rimozione dello spazio ha risolto il problema.