¿Cómo puedo corregir el error JDK no encontrado al crear una fuente de Android?

Estoy tratando de construir la fuente de Android por los pasos que se proporcionan aquí. Sin embargo tengo problemas con mi JDK. Al iniciar:

lunch full-eng 

Obtuve el siguiente error:

 /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: build/core/find-jdk-tools-jar.sh: Permission denied build/core/config.mk:344: *** Error: could not find jdk tools.jar, please install JDK6, which you can download from java.sun.com. Stop. ** Don't have a product spec for: 'full' ** Do you have the right repo manifest? 

Así que traté de instalar el JDK correctamente por los siguientes pasos:


Paso 1

Desinstale todo lo relacionado con JAVA siguiendo estos pasos.

Paso 2

Instale JAVA correcto siguiendo estos pasos . Utilicé la opción de instalación predeterminada y la versión 6, no 7 ni 8

Paso 3

Aquí estoy simplemente siguiendo esta respuesta.

 sudo gedit .bashrc 

Edite el archivo en la parte inferior agregando esas líneas

 JAVA_HOME=/usr/lib/jvm/java-6-oracle export JAVA_HOME # replacing /path/to/androidsdk/ with correct path of course.. export PATH=${PATH}:/path/to/androidsdk/android-sdk-linux/platform-tools PATH=$PATH:$JAVA_HOME # Variable ANDROID_JAVA_HOME ANDROID_JAVA_HOME=/usr/lib/jvm/java-6-oracle export ANDROID_JAVA_HOME PATH=$PATH:$ANDROID_JAVA_HOME 

Etapa 4

Prueba lo que he hecho hasta ahora:

 ...:~$ echo $JAVA_HOME /usr/lib/jvm/java-6-oracle ...:~$ java -version java version "1.6.0_45" Java(TM) SE Runtime Environment (build 1.6.0_45-b06) Java HotSpot(TM) Server VM (build 20.45-b01, mixed mode) ...:~$ which java /usr/bin/java ...:~$ echo $ANDROID_JAVA_HOME /usr/lib/jvm/java-6-oracle ...:~$ echo $PATH /usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/java-6-oracle/bin:/usr/lib/jvm/java-6-oracle/db/bin:/usr/lib/jvm/java-6-oracle/jre/bin:/path/to/androidsdk/android-sdk-linux/platform-tools:/usr/lib/jvm/java-6-oracle 

Paso 5

Entra en el terminal a la carpeta de origen de Android e ingresa

 source build/envsetup.sh 

Resultado:

 including device/asus/grouper/vendorsetup.sh including device/asus/tilapia/vendorsetup.sh including device/generic/armv7-a-neon/vendorsetup.sh including device/generic/armv7-a/vendorsetup.sh including device/generic/mips/vendorsetup.sh including device/generic/x86/vendorsetup.sh including device/lge/mako/vendorsetup.sh including device/samsung/maguro/vendorsetup.sh including device/samsung/manta/vendorsetup.sh including device/samsung_slsi/arndale/vendorsetup.sh including device/samsung/toroplus/vendorsetup.sh including device/samsung/toro/vendorsetup.sh including device/ti/panda/vendorsetup.sh 

Paso 6

Entra en el terminal a la carpeta de origen de Android e ingresa

 lunch full-eng 

Resultado:

 .../androidsource$ lunch full-eng /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi-gcc: Permission denied /bin/bash: build/core/find-jdk-tools-jar.sh: Permission denied build/core/config.mk:344: *** Error: could not find jdk tools.jar, please install JDK6, which you can download from java.sun.com. Stop. ** Don't have a product spec for: 'full' ** Do you have the right repo manifest? 

¿Qué hice mal? ¿Lo que falta? ¿Qué pasa con el "Permiso denegado"?

Tuve el mismo problema. Lo tengo resuelto mi cambiar el permiso de archivo para toda la carpeta de código fuente de Android:

 sudo chmod 755 -R ~/Android 

He encontrado la solución:

  1. Por alguna razón, yo no tenía los derechos respectivos, como sugeriría el "Permiso denegado". Establecer los permisos para la carpeta de origen de Android a través de chmod hizo el truco

  2. He descargado por error la última rama. Sin embargo, sólo tengo un sistema de 32 bits. Para 32 bits sólo puede utilizar la fuente de Android que es más pequeño que Android 2.3 y para esas versiones también tiene que usar JDK 5 http://source.android.com/source/building.html

También tuvo el mismo problema, pero se debió a un problema de NTFS, ya que no era capaz de ejecutar desde la partición. Aquí está la solución que encontré.

https://askubuntu.com/questions/164847/cant-compile-in-ntfs-partition

Normalmente, esto se debe a que javac no está configurado como una alternativa para el sistema. Así que no hay ningún enlace de / usr / bin / javac para su javac.

Configure la alternativa para javac utilizando el siguiente comando:

 $ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.6.0_32/bin/javac" 1 

nota: el directorio instalado de javac para mí es "/usr/lib/jvm/jdk1.6.0_32/", puede cambiarlo por su configuración.

También me encontré con la misma situación. He activado el usuario root y he iniciado sesión e hizo lo mismo que se menciona en http://source.android.com/source/building.html sitio y funcionó perfectamente.

  • ¿Cómo hago el trabajo de ADB en linux con una motorola
  • Establecer ADB en modo TCP / IP: ¿dispositivo no encontrado?
  • ¿Cómo abrir el administrador de AVD en Ubuntu Linux desde la línea de comandos?
  • ¿Cómo instalar Android SDK en Ubuntu?
  • Configuraciones del proxy del SDK de Android SDK en LINUX
  • Cordova - el módulo check_reqs falta para la plataforma. Saltando
  • Search.h-No existe tal archivo o directorio mientras se porta libtiff en Android-tiff 4.0.1
  • Cordova build - No se pudo resolver com.android.tools.build:gradle:1.5.0
  • No se puede conectar la versión 2.3.6 de Android en Ubuntu 12.04
  • Ningún archivo o directorio 'mientras intenta obtener la versión de adb
  • 'Ningún comando' adb 'encontrado' error en Ubuntu
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.