Variabili d'ambiente per l'installazione di Java


205

Come impostare le variabili di ambiente per Java in Windows (il percorso di classe)?


2
Quali variabili d'ambiente? Il percorso di classe e JAVA_HOME? Quale piattaforma (Linux / Windows)? Si prega di elaborare
Wernsey,

22
Sono solo a pensare che sia troppo zoppo che il programma di installazione java non aggiorni automaticamente la variabile d'ambiente path?
Thomas Eyde,

2
@ThomasEyde - l'unico problema con quell'idea è cosa succede se voglio più JVM sulla mia macchina - l'impostazione automatica del percorso causerebbe quindi problemi.
Richard Le Mesurier,

3
@Richard Le Mesurier: basta avere una casella di controllo "imposta come nuova JVM predefinita"
nell'installer

commentando per riferimento
Asker123

Risposte:


395

Java SE Development Kit 8u112 su Windows 7 o Windows 8 a 64 bit

Impostare le seguenti variabili di ambiente utente (== variabili di ambiente di tipo variabili utente )

  • JAVA_HOME : C:\Program Files\Java\jdk1.8.0_112
  • JDK_HOME : %JAVA_HOME%
  • JRE_HOME : %JAVA_HOME%\jre
  • CLASSPATH : .;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib
  • PATH : your-unique-entries;%JAVA_HOME%\bin(assicurarsi che il longish your-unique-entriesnon contenga altri riferimenti a un'altra cartella di installazione Java.

Nota per utenti Windows su sistemi a 64 bit:

Progra~1 = 'Program Files'
Progra~2 = 'Program Files(x86)'

Si noti che queste variabili di ambiente sono derivate dalla variabile di ambiente "root" JAVA_HOME . Ciò semplifica l'aggiornamento delle variabili di ambiente durante l'aggiornamento di JDK. Indica JAVA_HOMEla nuova installazione.

C'è un blogpost che spiega la logica alla base di tutte queste variabili d'ambiente .

Raccomandazioni opzionali

  • Aggiungi una variabile di ambiente utente JAVA_TOOL_OPTIONS con valore -Dfile.encoding="UTF-8". Questo assicura che Java (e strumenti come Maven ) verranno eseguiti con un Charset.defaultCharset()of UTF-8(anziché quello predefinito Windows-1252). Ciò ha risparmiato un sacco di mal di testa quando si utilizza il mio codice e quello di altri, che purtroppo spesso assumono la (normale) codifica predefinita UTF-8 .
  • Quando è installato JDK, aggiunge alla variabile di ambiente di sistema Path una voce C:\ProgramData\Oracle\Java\javapath;. Ho notato aneddoticamente che i collegamenti in quella directory non sono stati aggiornati durante un aggiornamento dell'installazione JDK. Quindi è meglio rimuovere C:\ProgramData\Oracle\Java\javapath;dalla Pathvariabile di ambiente di sistema per avere un ambiente coerente.

12
È la risposta migliore
Kimchi Man,

1
Buona risposta. Faccio anche una giunzione di directory alla mia installazione java che posso aggiornare ogni volta che installo una nuova versione ( mklink /j C:\devel\java8 "C:\Program Files\Java\jdk1.8.0_91"). In questo modo quando uso cygwin o qualcosa che non è in grado di leggere le variabili env di Windows, ho ancora un modo rapido di scambiare versioni. Ed è molto più facile ricordare il percorso più breve senza la versione minore.
kghastie,

Ho provato a impostare una variabile JAVA_ROOT_PATH ma a JAVA_HOME non sembra piacermi l'utilizzo di nessuna variabile di ambiente per il suo valore. C'è una ragione per questo?
Eric,

3
La javapathdirectory e i collegamenti simbolici sono creati dall'installazione di JRE (che è un processo facoltativo durante l'installazione di JDK), quindi se non avessi installato JRE non avresti creato javapath. Si noti che %JAVA_HOME%\jrenella risposta è il JRE privato di JDK destinato all'uso del compilatore Java. Non è esattamente lo stesso del JRE pubblico. Si noti inoltre che, a partire da 1.8u112, l'installazione di JRE sembra aver smesso di creare collegamenti simbolici javapathe invece crea collegamenti rigidi a .exes in ..\javapath_target_nnnnnnn\*.exe.
Klitos Kyriacou,

3
L'impostazione funziona bene per me. Poiché non esiste una cartella jre su jdk 11, rimuovo la variabile JRE_HOME e il valore% JAVA_HOME% \ jre \ lib nella variabile CLASSPATH. Per maggiori informazioni su JDK 11 senza JRE: stackoverflow.com/questions/52584888/...
Huanfa Chen

66

Inorder di Windows per impostare

Passaggio 1: fare clic con il tasto destro su MyComputer e fare clic su Proprietà.

Passaggio 2: fare clic sulla scheda Avanzate

testo alternativo

Passaggio 3: fare clic su Variabili d'ambiente

testo alternativo

Passaggio 4: creare un nuovo percorso di classe per JAVA_HOME

testo alternativo

Passaggio 5: immettere il nome della variabile come JAVA_HOME e il valore per il percorso del proprio jdk bin, ovvero c: \ Programfiles \ Java \ jdk-1.6 \ bin e

NOTA Accertati di iniziare con .;Valore in modo che non danneggi le altre variabili di ambiente che sono già impostate.

testo alternativo

Passaggio 6 : seguire il passaggio precedente e modificare il percorso nelle variabili di sistema aggiungere quanto segue ;c:\Programfiles\Java\jdk-1.6\binnella colonna valore.

Passo 7 : Dopo aver impostato le variabili di ambiente per Java, per testarlo vai al prompt dei comandi e digita

 java   

chi otterrà un elenco di documenti di aiuto

Per assicurarsi che il compilatore sia impostato, digitare cmd

  javac

che otterrà un elenco relativo a javac

Spero che questo ti aiuti !


1
Bella spiegazione. Una piccola cosa nel passaggio 6: non digitare $javao $javac, ma solo javao javac.
Jesper,

1
E nota che devi aggiungere la directory bin JDK alla PATHvariabile d'ambiente; solo l'impostazione JAVA_HOMEnon è sufficiente.
Jesper,

1
si scusa da quando sono un amante di Linux. mi è mancato lo cambierà, grazie
Srinivas MV

3
1. utilizzare le barre rovesciate in WINDOWS 2. non avviare alcun percorso con ".;" 3. aggiungi% JAVA_HOME% \ bin al percorso, in questo modo puoi in seguito cambiare java_home senza cambiare il percorso
raudi,

1
@Wannacoffee Aggiornate le modifiche per le barre rovesciate
Srinivas MV

27

--- Per impostare il percorso java ---

Esistono due modi per impostare il percorso java

Un temporaneo

  1. Apri cmd
  2. Scrivi in ​​cmd: javac

Se java non è installato, verrà visualizzato il messaggio:

javac non è riconosciuto come comando interno o esterno, programma eseguibile o file batch .

  1. Scrivi in ​​cmd: set path=C:\Program Files\Java\jdk1.8.0_121\bin
  2. Scrivi in ​​cmd: javac

È possibile verificare che il percorso sia impostato se non è stato generato alcun errore.

È importante notare che questi cambiamenti sono temporanei solo dai programmi lanciati da questo cmd.

NOTA: potrebbe essere necessario eseguire la riga di comando come amministratore

B. permanente

  1. Fai clic con il pulsante destro del mouse su "Risorse del computer" e fai clic su Proprietà
  2. Fai clic su "Impostazioni di sistema avanzate"
  3. Fai clic su "Variabili d'ambiente"
  4. Fai clic sulla nuova scheda della variabile utente
  5. Scrivi pathavariable name
  6. Copia il percorso del cestino cartella
  7. Incollare il percorso della cartella bin invariable value
  8. Clicca OK

Il percorso è ora impostato in modo permanente.

SUGGERIMENTO: lo strumento "Rapid Environment Editor" (freeware) è ottimo per modificare le variabili di ambiente e utile in quel caso

SUGGERIMENTO2: esiste anche un modo più rapido per accedere alle variabili d'ambiente: premere i tasti Win+ R, incollare quanto segue %windir%\System32\rundll32.exe sysdm.cpl,EditEnvironmentVariablese premereENTER


17

In Windows 7, fai clic con il pulsante destro del mouse su Computer -> Proprietà -> Impostazioni di sistema avanzate ; quindi nella scheda Avanzate , fai clic su Variabili d'ambiente ... -> Variabili di sistema -> Nuovo ... .

Assegna alla nuova variabile di sistema il nome JAVA_HOMEe il valoreC:\Program Files\Java\jdk1.7.0_79 (a seconda del percorso di installazione di JDK che varia).

Quindi selezionare la Pathvariabile di sistema e fare clic su Modifica ... . Mantenere il nome della variabile come Pathe aggiungere C:\Program Files\Java\jdk1.7.0_79\bin;o %JAVA_HOME%\bin;(entrambi significano lo stesso) al valore della variabile.

Una volta terminate le modifiche sopra, prova le fasi seguenti. Se non vedi risultati simili, riavvia il computer e riprova. Se il problema persiste, potrebbe essere necessario reinstallare JDK.

Aprire un prompt dei comandi di Windows (tasto Windows + R-> invio cmd-> OK ) e verificare quanto segue:

java -version

Vedrai qualcosa del genere:

java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

Quindi controllare quanto segue:

javac -version

Vedrai qualcosa del genere:

javac 1.7.0_79

14

Le istruzioni di installazione di JDK spiegano esattamente come impostare PATH, per le diverse versioni di Windows.

Normalmente non è necessario impostare la CLASSPATHvariabile di ambiente. Se lo lasci non impostato, Java cercherà nella directory corrente per trovare le classi. È possibile utilizzare la -cpo -classpathinterruttore linea di comando con javao javac.


4
+1 per "Normalmente non dovresti impostare la variabile d'ambiente CLASSPATH.".
BalusC

5

Ho intenzione di spiegare qui con le immagini per Windows 7.

Si prega di seguire i seguenti passi:

Passaggio 1: vai su "Start" e accedi alle proprietà "Risorse del computer"

inserisci qui la descrizione dell'immagine

Passaggio 2: vai su "Impostazioni avanzate del sistema" e fai clic su di esso.

inserisci qui la descrizione dell'immagine

Passaggio 3: vai su "Start" e accedi alle proprietà "Risorse del computer"

inserisci qui la descrizione dell'immagine

Passaggio 4: la finestra di dialogo per la variabile di ambiente si aprirà in questo modo:

inserisci qui la descrizione dell'immagine

Passaggio 5: vai al percorso e fai clic su Modifica.

inserisci qui la descrizione dell'immagine

Passaggio 6: posiziona il percorso del tuo JDK ovunque risieda nel cestino come puoi vedere nella foto. Aggiungi anche il percorso dal tuo sdk di Android fino agli strumenti della piattaforma:

inserisci qui la descrizione dell'immagine


3

Nel contesto di programmazione è possibile eseguire il comando SET (SET classpath = c: \ java) oppure fare clic con il tasto destro del mouse sul computer> proprietà> avanzate> variabili di ambiente.

In un file batch è possibile utilizzare

SET classpath=c:\java
java c:\myapplication.class

Non riesco a capire la seconda riga. Cosa significa?
St.Shadow

3

Per utenti di Windows 7:

Fare clic con il tasto destro su Risorse del computer, selezionare Proprietà; Avanzate; Impostazioni di sistema; Avanzate; Variabili ambientali. Quindi trova PATH nella seconda casella e imposta la variabile come nella figura qui sotto.

Editor di variabili PATH



2

Impostare la variabile di ambiente Java in Centos / Linux

/ home / vi .bashrc

export JAVA_HOME = / opt / oracle / product / java / jdk1.8.0_45

export PATH = $ JAVA_HOME / bin: $ PATH

java -version


2

Tenere presente che la %CLASSPATH%variabile di ambiente viene ignorata quando si utilizza java / javac in combinazione con uno degli argomenti -cp, -classpatho -jar. Viene anche ignorato in un IDE come Netbeans / Eclipse / IntelliJ / etc. È solo stato usato quando si utilizza java / javac senza nessuno degli argomenti sopra menzionati.

Nel caso di file JAR, il percorso di classe deve essere definito come class-pathvoce nel file manifest.mf. Può essere definito punto e virgola separato e relativo alla radice del file JAR.

Nel caso di un IDE, hai il cosiddetto 'percorso di costruzione' che è fondamentalmente il percorso di classe che viene utilizzato sia in fase di compilazione che in fase di esecuzione. Per aggiungere librerie esterne di solito rilasciate il file JAR in una cartella (precreata da IDE o creata in modo personalizzato) libdel progetto che viene aggiunta al percorso di compilazione del progetto.


@Balus è un mendicante che sta cercando di impostare il suo ambiente Java su PC Windows.
Srinivas MV,

1
Esattamente. Colui che sarebbe molto confuso quando scopre che il percorso di classe che ha configurato non funziona per i file JAR né per gli IDE. Solo un avvertimento al suo posto :)
BalusC

1

Per una migliore distribuzione, impostare esattamente il percorso di classe e mantenere l'ambiente chiaro. O su * .bat (lo stesso per Linux, ma con i simboli delle variabili corrette):

CLASSPATH="c:\lib;d:\temp\test.jar;<long classpath>"
CLASSPATH=%CLASSPATH%;"<another_logical_droup_of_classpath" 
java -cp %CLASSPATH% com.test.MainCLass

O dalla riga di comando o * .bat (anche per * .sh) se ID classpath non molto lungo:

java -cp "c:\lib;d:\temp\test.jar;<short classpath>"

1

Per Windows:

  • Fare clic con il tasto destro su "I miei computer" e aprire "Proprietà".
  • In Windows Vista o Windows 7, vai su "Impostazioni di sistema avanzate". Altrimenti vai al passaggio successivo.
  • Vai su "Scheda Avanzate" e fai clic sul Environment Variablespulsante.
  • Seleziona "Percorso" nell'elenco "Variabili di sistema", quindi premi Edite aggiungiC:\Program Files\java\jdk\bin dopo un punto e virgola.
  • Ora fai clic sul pulsante "nuovo" sotto le variabili di sistema e inserisci "JAVA_HOME" come nome della variabile e percorso della home directory jdk (es. "C: \ Programmi \ Java \ jdk1.6.0_24" se stai installando java versione 6. Directory il nome può cambiare con le versioni diff. java) come valore_valore.

1
  1. Scarica il JDK
  2. Installalo
  3. Quindi impostare le variabili di ambiente in questo modo:
  4. Fai clic su MODIFICA

inserisci qui la descrizione dell'immagine

  1. Quindi fai clic su PERCORSO , fai clic su Aggiungi, quindi aggiungi in questo modo: inserisci qui la descrizione dell'immagine
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.