Intentando agregar adb a la variable PATH OSX

121

Estoy intentando desarrollar para Android y quiero agregarlo adba mi PATHpara poder iniciarlo realmente fácilmente. He agregado directorios antes porque, por alguna razón adb, no quiero ser encontrado. Esto es muy frustrante. ¿Alguien más ha tenido este problema antes?

Creé un archivo .profiley le agregué lo siguiente.

export PATH = ${PATH}:/Users/simon/Libs/android-sdk-mac_x86/platform-tools/
export PATH = ${PATH}:/Users/simon/Libs/android-sdk-mac_x86/tools

Cuando reviso mi ruta de entorno veo lo siguiente:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Libs/android-sdk-mac_x86/tools:/Libs/android-sdk-mac_x86/platform-tools

Entonces sé que se agrega a mi PATHvariable. Ahora, cuando trato de ejecutar adb, obtengo que no se encuentra.

-bash: ./adb: No such file or directory

Esto es muy muy frustrante. ¿Podría ser un problema con los permisos? ¿Alguien ha tenido este problema con OSX y Android?

skoko
fuente
55
nota: poner espacios antes y / o después del signo igual causa problemas. debería verse como "export PATH = $ {PATH}: / Users / simon / Libs / android-sdk-mac_x86 / tools"
Ben H

Respuestas:

42

¿Por qué estás intentando ejecutar "./adb"? Eso omite la variable de ruta por completo y solo busca "adb" en el directorio actual. Intente ejecutar "adb" en su lugar.

Editar: su camino se ve mal. Dices que tienes

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Libs/android-sdk-mac_x86/tools:/Libs/android-sdk-mac_x86/platform-tools

Te falta la parte / Users / simon.

También tenga en cuenta que si tiene archivos .profile y .bash_profile, solo se ejecutará este último.

Laca
fuente
Intenté tanto ./adb como adb .. Nada, no tengo idea de qué hay de malo en esto.
skoko
¿Dónde se supone que se ubica adb? Verifique que esté allí y que tenga permisos de ejecución (cd para el directorio y haga ls -l adb).
LaC
1
Si voy al directorio, puedo ejecutarlo sin problemas. Aquí está la salida. -rwxrwxrwx 1 simon staff 179312 28 feb 02:48 adb
skoko
1
Gracias por esta respuesta Resulta que tanto .profile como .bash_profile estaban ambos allí. Tenía los valores en .profile y sí. Ahora funciona. Muchas gracias chicos.
skoko
1
Funciona ahora, solo tenía dos perfiles. Uno sobre escribió el otro. Si alguien está haciendo esto, use .bash_profile para editar la variable de ruta. Seguí un tutorial diferente que decía usar .profile
skoko
298

Agregar a RUTA por cada inicio de sesión

Versión de control total :

en su terminal, navegue al directorio de inicio

discos compactos

crear archivo .bash_profile

toque .bash_profile

abrir archivo con TextEdit

abrir -e .bash_profile

insertar línea en TextEdit

RUTA de exportación = $ RUTA: / Usuarios / nombre de usuario / Biblioteca / Android / sdk / platform-tools /

guardar archivo y volver a cargar el archivo

source ~ / .bash_profile

comprobar si adb se estableció en la ruta

versión adb


Una versión de línea

Haga eco de su comando de exportación y redirija la salida que se agregará al archivo .bash_profile y reinicie el terminal. (no he verificado esto pero debería funcionar)

echo "export PATH = $ PATH: / Users / username / Library / Android / sdk / platform-tools / sdk / platform-tools /" >> ~ / .bash_profile

Tobrun
fuente
2
El penúltimo paso en el paso anterior es "Reiniciar terminal" :)
Brijesh Thakur
14
Reiniciar el terminal no debería ser necesario, la recarga del archivo debería ser suficiente
Tobrun
Actualización: Probablemente no te funcione porque estás usando varias pestañas. Cada pestaña en su terminal tiene su propia sesión. Vuelva a cargar el .bash_profile en la pestaña del comando "adb version".
Tobrun
2
puede usar export PATH = $ PATH: $ HOME / Library / Android / sdk / platform-tools /, simplemente copiando y pegando y no es necesario cambiar el nombre de usuario
Mohit
1
Eliminé el sdk/platform-tools/bit al final, ya que esto me estaba dando una advertencia de bash en Android Studio.
Ryan R
64

Alternativa: instale adb de manera fácil

Si no desea preocuparse por su ruta o actualizar adb manualmente, puede usar homebrew en su lugar.

brew cask install android-platform-tools

brismuth
fuente
1
Mucho mejor que intentar jugar con PATH, .bash_profile, etc. ¡Gracias!
smets.kevin
sí c [_] ~ ᒡ ◯ ᵔ ◯ ᒢ
Adam Mendoza
FYI, esto ahora da el error: Error: No hay una fórmula disponible con el nombre "android-platform-tools". Uso: brew install Caskroom / cask / android-platform-tools en su lugar
The Hungry Androider
@The Hungry Androider - lo arregló
brismuth
No he intentado esto, pero me pregunto si uno instala Android Studio y Homebrew, y si esto podría crear una versión fuera de sincronización en el futuro ... solo un pensamiento
Kinergy
27

En mi Macbook Pro, he agregado las líneas de exportación a ~ / .bash_profile, no .profile.

p.ej

export PATH=/Users/me/android-sdk-mac_86/platform-tools:/Users/me/android-sdk-mac_86/tools:$PATH
David Snabel-Caunt
fuente
gracioso. Abrí ese archivo ... Esta línea exacta ya estaba allí. Creo que eclipse agregó eso mientras instalaba el complemento.
skoko
Es posible, aunque yo mismo agregué el mío.
David Snabel-Caunt
De acuerdo con johnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-x puede tener perfiles en conflicto
David Snabel-Caunt
Creo que ese es exactamente el problema. Otra aplicación (creo MacPorts) creó .profile
skoko
1
No olvide reiniciar el terminal después de agregar a PATH.
Adam Johns
13

Simplemente encierre a cualquiera que encuentre esta publicación SO cuando use Android Studio, que incluye el SDK que tiene parte del paquete de la aplicación (en Mac OSX).

Así como @davecaunt y @ user1281750 notaron pero inserte la siguiente línea en .bash_profile

export PATH=/Applications/Android\ Studio.app/sdk/tools:/Applications/Android\ Studio.app/sdk/platform-tools:$PATH
scottyab
fuente
¡Increíble! Thx scottyab!
rilar
Alternativamente, se encuentra en Users / [user] / Android / sdk / platform-tools ... No me gusta vincular a la carpeta de Aplicaciones (aunque quizás solo soy yo).
Adam
13

La respuesta para MAC debería ser:

  1. Abra su bash_profile con los siguientes comandos: open ~/.bash_profile

  2. En caso de que el archivo de perfil base no exista, cree uno nuevo con el siguiente comando: touch .bash_profileluego repita la fase 1.

  3. Agregue la siguiente línea: export PATH=/Users/"YOURUSER"/Library/Android/sdk/platform-tools:$PATH

  4. Reinicie su ventana de bash y pruebe escribiendo adb shell

¡Buena suerte! :-)

Avi Levin
fuente
9

En su terminal, navegue al directorio de inicio

cd
create file .bash_profile

touch .bash_profile
open file with TextEdit

open -e .bash_profile
insert line into TextEdit

export PATH=$PATH:/Users/username/Library/Android/sdk/platform-tools/
save file and reload file

source ~ / .bash_profile es muy importante, compruebe si adb se estableció en la ruta

adb version

Debería estar bien ahora.

Kotini tirumula
fuente
8

Yo uso zsh y Android Studio. Utilizo una variable para mi ruta de Android SDK y configuro en el archivo ~/.zshrc:

export ANDROID_HOME=/Applications/Android\ Studio.app/sdk
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$PATH"

Nota: Asegúrese de no incluir comillas simples o dobles alrededor de la ruta especificada. Si lo haces, no funcionará.

colabug
fuente
7

Android Studio v1.2 instala la herramienta adb en esta ruta:

~/Library/Android/sdk/platform-tools/adb

Entonces va así:

  1. Run Terminal
  2. ejecutar adb versiony esperar una salida de error
  3. touch ~/.bash_profile
  4. open ~/.bash_profile
  5. agregue la ruta anterior antes del 'cierre': $ PATH
  6. source ~/.bash_profile
  7. correr adb versiony esperar una salida

¡Buena suerte!

nurnachman
fuente
3

Parece que todavía estás intentando ejecutar adbcon ./adb. Eso le pide al shell que ejecute el programa nombrado adb en el directorio de trabajo actual .

Prueba solo adbsin ./.

sarnold
fuente
Intenté eso también. Nada. Esto realmente me está volviendo loco.
skoko
@ user569594: ¿reiniciaste tu shell después de editar .profile? (es decir, si echo $PATHantes adb, ¿ve los nuevos directorios?)
sarnold
Sí, lo mencioné en la pregunta. Aparece en el eco, bash por alguna razón simplemente NO PUEDE VERLO.
skoko
@ user569594: lo siento, tuve que preguntar, he visto a personas editar sus scripts de inicio de shell, probar sus cambios iniciando un nuevo shell y olvidarse de reiniciar su shell actual y preguntarse dónde falla ... :)
sarnold
Sí, me aseguré de reiniciar. El problema radicaba en tener dos perfiles en mi directorio de inicio. Un .bash_profile y un .profile
skoko
3

Para que el terminal siempre tenga el archivo ~/.bashrcy coloque la ruta que desea utilizar, agregue:

export PATH=$PATH:/XXX

donde XXX es el camino que deseas usar.

para adb, esto es lo que uso:

export PATH=$PATH:/home/user/Android/android-sdk-linux_x86/platform-tools/

(donde "usuario" es mi nombre de usuario).

desarrollador de Android
fuente
1

Agregué export PATH=${PATH}:/Users/mishrapranjal/android-sdks/platform-tools/a ambos lugares .bash_profiley .profilepara asegurarme de que funciona. Todavía no funcionaba y luego miré el consejo de sarnold sobre reiniciar el terminal y funcionó de maravilla. Me ahorró el tiempo de agregar cada vez esto en el momento en PATHque tuve que correr adb. Gracias chicos.

Pranjal
fuente
En lugar de reiniciar su terminal, puede usar el siguiente comando para volver a cargar el archivo: " . .Bash_profile "
Tobrun
0

Si parece que alguien no puede llegar al .bash_profilearchivo para tomar rutas nuevas Y tiene otros comandos en ese archivo (como los comandos de alias), intente mover las declaraciones PATH al principio del archivo.

Eso es lo único que funcionó para mí. La razón por la que funcionó fue porque tenía algunos errores tipográficos en mis comandos de alias y aparentemente este archivo arroja un error y se cierra si se encuentra con un problema. Es por eso que mis declaraciones PATH no se estaban ejecutando. Moverlo a la parte superior solo lo deja correr primero.

JoshJoe
fuente
0

ingrese la descripción de la imagen aquí

La segunda solución se explica a continuación. Pero cuando cierro el terminal, el cambio que hice en la variable de ruta se pierde. Por lo tanto, prefiero la primera manera!

ingrese la descripción de la imagen aquí

metis
fuente