2014-11-11 23 views
28

Non sapevo come impostare le variabili e ho cercato online e mi ha detto di il seguente: (a proposito sto usando jdk1.8.0_25 su Windows 8)Come risolvere l'errore: il sistema non riesce a trovare il file C: ProgramData Oracle Java javapath java.exe

si riferisce a tutto ciò che era in origine nella variabile

JAVA_HOME) C:\Program Files\Java\jdk1.8.0_25 
PATH)  ...;%JAVA_HOME%\bin 
CLASSPATH) .;%JAVA_HOME%\lib 

quadro delle relative variabili d'ambiente sono entrato: enter image description here

Potrei fare via e il file di classe, ma quando ho provato ad eseguire il file di classe, c'è stato un errore e ha detto quanto segue:

The system cannot find the file C:\ProgramData\Oracle\Java\javapath\java.exe.

io non riesco a capire quale sia il problema. Se sono le mie variabili che sono inquinate (e se sì, perché e come dovrei correggerlo) o se è qualcos'altro.

+0

controllare questo collegamento per sapere come impostare le variabili di ambiente. http://stackoverflow.com/q/1672281/4083590 – Joe

+0

@johny Quello che ho fatto è simile al post sul link. Non ho bisogno di un \ lib alla fine di classpath? L'ho provato con e senza Ho ancora ricevuto il messaggio di errore quando ho provato a eseguire il file di classe. – JavaBeginner

+0

è possibile controllare le variabili di ambiente aprendo un prompt dei comandi e digitare 'set' – CocoNess

risposta

2

Aggiornamento del Variabile di ambiente PATH

Se non si imposta la variabile PATH, è necessario specificare il percorso completo del file eseguibile ogni volta che si esegue, come ad esempio:

C:\> "C:\Program Files\Java\jdk1.8.0\bin\javac" MyClass.java 


È utile impostare permanentemente la variabile PATH in modo che possa persistere dopo il riavvio.
Per impostare permanentemente la variabile PATH, aggiungere il percorso completo della directory jdk1.8.0 \ bin alla variabile PATH. In genere, questo percorso completo è simile a
C:\Program Files\Java\jdk1.8.0\bin.
impostare la variabile PATH come segue su Microsoft Windows:

  • Fare clic su Start, Pannello di controllo, quindi Sistema.
  • Fare clic su Avanzate, quindi su Variabili d'ambiente.
  • Aggiungere il percorso della cartella bin dell'installazione JDK alla variabile PATH in Variabili di sistema.
    Il seguente è un valore tipico per la variabile PATH:

    C: \ WINDOWS \ system32; C: \ WINDOWS; C: \ Program Files \ Java \ jdk1.8.0 \ bin

    Nota:

  • La variabile di ambiente PATH è una serie di directory separate da punto e virgola (;) e non è sensibile al maiuscolo/minuscolo. Microsoft Windows cerca i programmi nelle directory PATH in ordine, da sinistra a destra.

  • Si dovrebbe avere solo una directory bin per un JDK nel percorso alla volta. Quelli che seguono la prima istanza sono ignorati.

  • Se non si è sicuri su dove aggiungere il percorso JDK, aggiungerlo.

Il nuovo percorso ha effetto in ogni nuova finestra di comando aperta dopo aver impostato la variabile PATH.

+1

Origine: [Istruzioni per l'installazione Java] (http://www.oracle.com/technetwork/java/javase/install-windows-189425.html) – flugga

1

Ci sono 2 versioni di jdk nel PATH VARIABLEjdk1.6.0_45 e jdk1.8.0_25. Prova a rimuovere il primo esempio. jdk1.6.0_45 da PATH

+0

Ho controllato e ho notato che c'era qualcosa della versione di Java 6 ma non potevo liberarsene. Sai cosa significa questo errore? pic: http://i62.tinypic.com/vxn0vn.jpg – JavaBeginner

43

Ho un problema simile al momento sto lavorando alla risoluzione. Non posso dire che questo risolverà il tuo errore poiché potrebbero esserci problemi con altri software (che è il mio caso con Eclipse Luna).

Java sta usando il percorso specificato nella variabile PATH, che è,

C:\ProgramData\Oracle\Java\javapath 

Vai a questa cartella (ProgramData è nascosta, in modo da mostrare che, se necessario) e fare clic destro sul link simbolico java.exe. Vedrai nel campo Target dove sta cercando java.exe. Potrebbe puntare al file java.exe dalla precedente installazione di jdk1.6.0_45. Qui puoi incollare nuove scorciatoie o modificare l'impostazione PATH come altri hanno menzionato.

Ho trovato che il programma di installazione di Java non modifica il javapath o aggiorna il percorso del sistema, almeno quando va da 1.8 a 1.7. Nel mio caso, la modifica delle scorciatoie ha comportato un problema con Eclipse all'avvio.

MODIFICA: ----- Dopo aver giocato con le scorciatoie della cartella javapath, risulta necessario disporre di collegamenti simbolici, almeno per Eclipse. Vedi, Windows how to create directory symlink.

Non è necessario l'opzione/d per un file link simbolico,

mklink java.exe "C:\Program Files\Java\jdk1.8.0_20\bin\java.exe" 
    mklink javaw.exe "C:\Program Files\Java\jdk1.8.0_20\bin\javaw.exe" 
    mklink javaws.exe "C:\Program Files\Java\jdk1.8.0_20\bin\javaws.exe" 

Questo ora lavora per me.

+3

Non è modificabile in Windows –

+5

Non sembra funzionare su Windows 7 - a causa di un recente cambiamento nel modo in cui gestisce i collegamenti simbolici, la sua GUI mostra un errore che dice non riesce a trovare "java [w/ws] .exe" quando si utilizzano i collegamenti simbolici. È più sicuro solo creare una giunzione di directory: 'rmdir/s/q% ProgramData% \ Oracle \ Java \ javapath e mlink/d% ProgramData% \ Oracle \ Java \ javapath% ProgramFiles% \ Java \ jre1.8.0_60 \ bin' – dinvlad

+2

Prima di eseguire quei mklink, assicurati di 'cd C: \ ProgramData \ Oracle \ Java \ javapath' e' del java * .exe', altrimenti creerai i nuovi collegamenti simbolici nella tua attuale directory cmd ... –

2

Prima andare alle variabili di ambiente. È necessario essere consapevoli del fatto che sotto Variabili di sistema c'è una variabile chiamata Path, è scelto di modificare quella variabile allora ci sarebbe una voce simile Oracle \ Java \ JavaPath \ java.exe ..remove e aggiungere la richiesta Percorso Jre fino alla cartella bin e non dimenticare di creare la variabile utente JAVA_HOME.Verrà risolto il problema di evry relativo a Java nel tuo computer.

17

Perché Oracle ha fatto un modo così scadente per puntare a java è oltre me. Abbiamo risolto questo problema con la creazione di un nuovo collegamento al JDK

mklink /d C:\ProgramData\Oracle\Java\javapath "C:\Program Files\Java\jdk1.8.0_40\bin\" 

Lo stesso lavoro per un JRE se questo è tutto ciò che è richiesto.

Questo sostituisce i vecchi collegamenti simbolici nelle C:\ProgramData\Oracle\Java\javapath (se esistessero in precedenza)

+0

funziona per java ma non per javac: impossibile trovare o caricare la classe principale com.sun.tools.javac.Main –

+6

'Perché Oracle ha fatto un modo così scadente per puntare a java è al di là di me' Suppongo che il motivo sia stato che quando tu avere env var relativamente costante (puntando sempre a un posto - cartella 'javapath'), è possibile cambiare i percorsi dinamicamente, al volo (la modifica di un collegamento non richiede il riavvio della shell). Mentre se cambi env var (per esempio PATH) dovrai riavviare la shell per ricaricare e applicare i nuovi valori di ENVVAR. Certo, non sono un sostenitore di Oracle e ovviamente è solo un mio suggerimento. – lospejos

0

Ci devono essere due o più variabili PATH. Prova a unirli tutti in uno utilizzando il punto e virgola (;)

0

Ho ottenuto lo stesso dopo aver installato java8 da un account non autorizzato. Per risolvere ho semplicemente reinstallato dall'account utente amministratore. Questo ha creato la directory citata con collegamenti a java exes.

0

Avevo anche un problema simile in cui dovevo disinstallare JDK 1.8 e avevo bisogno di jdk 1.7. Quello che ho fatto è stato rimuovere i collegamenti simbolici da javapath e poi importato i collegamenti di java, javaw, javaws dalla directory bin alla cartella javapath. Tuttavia, ho trovato alcuni problemi di autorizzazione nel laptop aziendale in cui non avevo il privilegio di modificare/aggiornare questa directory. Avevo dato il permesso appropriato all'amministratore e lì risolto.

0

Se siete su un PC aziendale che è abbastanza limitata da criteri di gruppo, questo potrebbe funzionare ....

Supponendo che

  1. Windows PATH include C:\ProgramData\Oracle\Java\javapath
  2. si è installato il JDK a C:\Program Files\Java\jdk1.8.0_60\bin

Quindi creare il seguente file di testo mklink.bat e metterlo sul desktop:

rem mklink.bat 
mklink /d C:\ProgramData\Oracle\Java\javapath "C:\Program Files\Java\jdk1.8.0_60\bin" 
pause 

Ora il tasto destro del mouse e scegliere "Esegui come amministratore". Fornire credenziali di amministratore. Lo script dovrebbe riportare il successo. Ora puoi compilare o eseguire Java.

1

Questo problema si verifica quando si esegue l'aggiornamento da una versione all'altra. Perché jdk non viene aggiornato automaticamente.

Per lo stesso è possibile modificare le condizioni ambientali. Nelle variabili di sistema cercare il PERCORSO e aggiungere la posizione bin jdk nella parte anteriore della stringa (non sul retro). Una volta eseguito il controllo in CMD se "java" e "javac" funziona. se funziona, vai di nuovo alle variabili di sistema. add "CLASSPATH" ALLA variabile e il valore impostato " c: \ Program Files \ Java \ jdk1.8.0_91 \ lib;."

+0

per favore, dì qual è la tua domanda. quali sono i tuoi progressi spiegare di più e con una corretta formattazione. –

5

Sul fare java -version, sto ottenendo il messaggio di errore:

The system cannot find the file C:\ProgramData\Oracle\Java\javapath\java.exe

sono questi in variabile PATH:

C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Java\jdk1.8.0_92/bin; 

ho rimosso C:\ProgramData\Oracle\Java\javapath; e quello fissato il problema per m e.

java -version ora dà dettagli sulla versione di Java ecc

1

Questo di solito accade quando si aggiorna il java, il modo più semplice per risolvere questo è quello di disinstallare solo il JDK & reinstallarlo. NOTA: Ciò non rimuove il percorso o il percorso di classe, quindi non è necessario preoccuparsi.

2
  1. Disinstallare tutti JDK installati sul computer dal Pannello di controllo di Java
  2. Cerca C:\ProgramData\Oracle\Java ed eliminare quella directory e tutti i file contenuti all'interno. È possibile farlo dalla riga di comando utilizzando rmdir /S C:\ProgramData\Oracle\Java
  3. Quindi cercare C: \ ProgramData \ Oracle ed eliminare la cartella Oracle.È possibile farlo utilizzando rmdir /S C:\ProgramData\Oracle
  4. Ora installare JDK e impostare il percorso.

  5. Eseguire il programma. Non si troverà più lo stesso problema.

0

c:\ProgramData\Java\javapath viene utilizzato per collegamenti simbolici. Ovviamente è possibile aggiungere il percorso completo al percorso Java a %PATH%, ma allo stesso modo è possibile creare un collegamento simbolico al percorso della posizione sopra.

  1. Aprire CMD come amministratore.
  2. Tipo mklink java.exe (percorso completo java.exe) ad esempio

mklink java.exe "C:\Program Files\Java\jdk1.8.0_25\bin\java.exe"

0

non ti preoccupare. Basta disinstallare jdk e gli aggiornamenti jdk Prima di reinstallare jdk, eliminare la cartella Oracle all'interno della cartella nascosta di programData in C: \ Quindi reinstallare. Impostare quanto segue,

JAVA_HOME 
CLASSPATH 
PATH 
JRE_HOME (is optional) 
Problemi correlati