Come impostare JDK per Android Studio?


42

Non riesco a compilare un nuovo progetto predefinito per Android 2.1 perché (?) Il JDK utilizzato da Android Studio è JDK 1.7 ma dovrebbe essere JDK 1.6.

Per cambiarlo, vado su File -> Struttura del progetto e provo a trovare la posizione JDK 1.6.

Ma quando seleziono la sua directory e premo OKottengo il seguente errore:

Scegli una directory JDK valida

Scegli una directory JDK valida

Come puoi vedere nello screenshot, sto cercando di impostare Java 6 OpenJDK a 64 bit come nuovo JDK.

Cosa posso fare? Android Studio non è compatibile con OpenJDK e dovrei usare Oracle JDK invece?


Hai provato la bincartella?
Louis Matthijssen,

Ho provato con: ./bin| ./jre| ./jre/binstesso messaggio per tutti
Lucio,

1
Per me ho dovuto solo usare la cartella sopra /jrenella struttura delle directory, quindi il mio percorso è /usr/lib/jvm/java-8-oraclee non /usr/lib/jvm/java-8-oracle/jre. Ho supposto che il percorso dovrebbe terminare /jredal momento che il percorso predefinito (il "JDK" incorporato) lo fa, ma si scopre che se vai a cercare nella cartella predefinita, è una cartella chiamata "jre" che contiene un'altra cartella chiamata "jre" .
Jack M

Risposte:


24

Sto usando OpenJDK 7 con Android Studio e funziona perfettamente. (Al momento non ho nemmeno Oracle JDK installato.)

Su quello schermo che si sta mostrando (Struttura del progetto -> SKD Location) ho il seguente percorso per la posizione JDK : /usr/lib/jvm/java-1.7.0-openjdk-amd64.


8

Ispezionando studio.sh, è anche possibile impostare uno dei STUDIO_JDK, JDK_HOMEo JAVA_HOMEvariabili di ambiente per puntare alla posizione JDK.


studio.shcontrolla i STUDIO_JDK, JDK_HOMEe JAVA_HOMEvariabili di ambiente, al fine di:

if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/java" ]; then
  JDK="$STUDIO_JDK"
elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/java" ]; then
  JDK="$JDK_HOME"
elif [ -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
  JDK="$JAVA_HOME"

Quindi puoi semplicemente impostarli come appropriato e quindi Studio lo prenderà.


Questo funziona anche per Windows. utile se hai un JDK con DCEVM di default in JAVA_HOME che non funziona con Android Studio.
Mateus Viccari,

5

Sembra che Android Studio non riconosca OpenJDK, quindi devo installare OracleJDK .

Quindi ho scelto il percorso di Oracle JDK e ha funzionato!


l'ho installato ma non riesco a impostare la sua variabile di percorso. puoi per favore dirmi come posso farlo?
Nitesh Verma,

1
Sì, per prima cosa assicurati di aver java -versionprodotto correttamente la tua versione Java . Quindi, nella finestra AS selezionare /usr/lib/jvm/jdk1.8.0/. Mi è bastato in quel momento :-)
Lucio

3

Questo ha funzionato per me:

  1. Scopri la directory java:

    $ echo $JAVA_HOME
    /usr/lib/jvm/java-7-oracle
    
  2. Apri Android Studio e quindi File-> Struttura del progetto.

  3. Sotto SDK Location ho passato la directory java dall'alto
  4. Aspetta un paio di secondi e ho ricevuto "0 errori 0 pubblicità"

Ha funzionato! :)


2

I passaggi che ho seguito:

  1. Terminale aperto ed entra echo $JAVA_HOME

  2. Copia il percorso visualizzato nel terminale - Ctrl+ Shift+ Ccopia nel terminale Ubuntu

  3. In Android Studio - Struttura del progetto - Incollato il percorso copiato

  4. Atteso che il software riconosca e aggiorni le impostazioni

  5. Ciò ha risolto il problema delle impostazioni Jdk non valide


1

Se hai una ./bincartella con un JDK e Android Studio, puoi impostare la STUDIO_JDKvariabile prima di eseguire studio.shin un terminale:

STUDIO_JDK=./bin/jdk/ ./bin/android-studio/bin/studio.sh

0

Ho risolto questo problema. Uso AS 2.1 e JDK1.7 mentre mi richiedeva l'aggiornamento di JDK1.8 per alcune funzioni. Scarica il file di installazione di Java. Forse ho installato solo jre ma non jdk. quindi AS mi avvisa sempre che "Scegli una directory JDK valida". Quindi immagino che il problema del richiedente sia lo stesso che dovrei installare un JDK ma non jre.


0

Penso che potresti aver installato il jdk altrove per es /usr/local/java. Nel mio caso ho anche visto lo stesso nome di cartella nella directory mostrata nel tuo screenshot.

Quindi controlla solo se il jdk è presente altrove.

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.