¿Por qué Android Studio está ignorando mi archivo .bashrc en OSX?

He descargado un proyecto que utiliza ndk de Android. El archivo gradle contiene las líneas:

task ndkBuild(type: Exec) { commandLine 'ndk-build', '-B', '-C', file('src/main/jni').absolutePath } 

Esto funciona muy bien al ejecutar ./gradlew assembleDebug . Tengo los siguientes contenidos en mi ~/.bashrc :

 # Append android sdk paths and stuff. export ANDROID_HOME=/Users/gradha/instalacion_manual/android-sdk-r10-mac_x86 #export ANDROID_NDK_ROOT=/Users/gradha/instalacion_manual/android-ndk-r8b export ANDROID_NDK_ROOT=/Users/gradha/instalacion_manual/android-ndk-r10e export NDK_PATH="${ANDROID_NDK_ROOT}" export NDK_HOME="${ANDROID_NDK_ROOT}" export PATH=$PATH:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools:/Users/gradha/instalacion_manual/apache-maven-3.3.3/bin:"${ANDROID_NDK_ROOT}" 

Sin embargo, cuando intento construir el proyecto desde el estudio de Android,

 process.internal.ExecException: A problem occurred starting process 'command 'ndk-build'' at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:196) at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:325) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:83) ... 1 more Caused by: net.rubygrapefruit.platform.NativeException: Could not start 'ndk-build' at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27) at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:65) ... 1 more Caused by: java.io.IOException: Cannot run program "ndk-build" (in directory "/Users/gradha/project/questionity/archivo/SuperpoweredSDK/Android/CrossExample/app"): error=2, No such file or directory at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25) ... 3 more Caused by: java.io.IOException: error=2, No such file or directory ... 4 more 

Lo que sugiere que la variable PATH no se está estableciendo correctamente en el entorno y ni siquiera el proceso ndk-build es capaz de ejecutarse. Tocar .bashrc se supone para hacer este trabajo . ¿Por qué Android Studio no capta la PATH entorno PATH especificada en el archivo .bashrc ?

EDITAR PSEUDO RESPUESTA : Android Studio sigue otros entornos de desarrollo como Xcode para evitar que los archivos de configuración personales del usuario alteren el proceso de creación de software. La solución correcta, como Alex menciona, es leer un archivo local.properties externo con una variable ndk.dir apuntando a la ruta correcta, y fuente esta variable para construir una ruta completa a ndk-build lugar de confiar en PATH del entorno. El archivo local.properties se puede mantener fuera del control de código fuente y se puede personalizar para cada comprobación.

No hay nada que podamos hacer con el camino roto para Android Studio, pero es fácil resolver el problema de ndk-build – una vez y para siempre.

Agregue el siguiente bloque a la parte superior del archivo build.gradle para el módulo (aplicación o biblioteca):

 Properties properties = new Properties() properties.load(project.rootProject.file('local.properties').newDataInputStream()) def ndkBuild = properties.getProperty('ndk.dir') + '/ndk-build' import org.apache.tools.ant.taskdefs.condition.Os if (Os.isFamily(Os.FAMILY_WINDOWS)) { ndkBuild += '.cmd' } 

Y aquí está la tarea gradle:

 task buildNative(type: Exec, description: 'Compile JNI source via NDK') { commandLine "$ndkBuild" … } 
  • Biblioteca "libmaliinstr.so" no encontrado
  • Problema al ejecutar pruebas Junit en eclipse 3.4.1 en Mac OS
  • Android - Conexión a un dispositivo con adb over wifi
  • Encabezado ifaddrs.h no encontrado al compilar SDL para android
  • Eclipse: La instalación JRE especificada no existe
  • Error de segmentación OSX 11 - Android
  • Cómo configurar Android Studio en El Capitan (OS X 10.11)?
  • ¿Dónde está la carpeta del complemento para Android Studio en MAC
  • El proyecto Build Unity con Jenkins falló
  • Configuración de la variable ambiental ANDROID_HOME en Mac OS X
  • ¿Cómo puedo cambiar la forma en que resalto el texto en Android Studios en Mac?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.