Tentando adicionar adb à variável PATH OSX

121

Estou tentando desenvolver para o Android e quero adicioná-lo adbao meu PATHpara que eu possa iniciá-lo com muita facilidade. Eu adicionei diretórios antes por, por algum motivo adb, não quer ser encontrado. Isso é muito frustrante. Alguém já teve esse problema antes?

Criei um arquivo .profilee adicionei o seguinte.

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

Quando verifico o caminho do meu ambiente, vejo o seguinte:

/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

Então eu sei que é adicionado à minha PATHvariável. Agora, quando tento executar adb, entendo que ele não foi encontrado.

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

Isso é muito, muito frustrante. Poderia haver um problema com as permissões? Alguém já teve esse problema com OSX e Android?

skoko
fonte
5
nota: colocar espaços antes e / ou depois do sinal de igual causa problemas. ele deve ser parecido "export PATH = $ {PATH}: / Users / Simon / libs / android-sdk-mac_x86 / ferramentas"
Ben H

Respostas:

42

Por que você está tentando executar "./adb"? Isso ignora completamente a variável path e procura apenas "adb" no diretório atual. Tente executar "adb".

Edit: seu caminho parece errado. Você diz que recebe

/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

Está faltando a parte / Users / simon.

Observe também que, se você tiver os arquivos .profile e .bash_profile, apenas o último será executado.

Laca
fonte
Tentei ambos ./adb e adb .. Nada, eu não tenho idéia do que está errado com isso.
Skoko
Onde o adb deveria estar localizado? Verifique se está lá e se possui permissões de execução (cd para o diretório e faça ls -l adb).
LaC
1
Se eu for para o diretório, posso executá-lo sem problemas. Aqui está a saída. 1-simon staff 179312 28 / fev 02:48 adb
skoko
1
Obrigado por esta resposta. Acontece que ambos .profile e .bash_profile estavam lá. Eu tinha os valores em .profile e sim. Agora funciona. Muito obrigado pessoal.
Skokey #
1
Funciona agora, eu só tinha dois perfis. Um escreveu o outro. Se alguém estiver fazendo isso, use .bash_profile para editar a variável do caminho. Segui um tutorial diferente que o referido usar .profile
Skoko
298

Adicione ao PATH para cada login

Versão de controle total :

no seu terminal, navegue até o diretório inicial

CD

criar arquivo .bash_profile

toque em .bash_profile

abrir arquivo com o TextEdit

open -e .bash_profile

inserir linha no TextEdit

exportar PATH = $ PATH: / Usuários / nome de usuário / Biblioteca / Android / sdk / platform-tools /

salvar arquivo e recarregar arquivo

source ~ / .bash_profile

verifique se adb foi definido no caminho

versão adb


Versão liner

Faça eco do seu comando de exportação e redirecione a saída a ser anexada ao arquivo .bash_profile e reinicie o terminal. (não verificamos isso, mas deve funcionar)

echo "export PATH = $ PATH: / Usuários / nome de usuário / Biblioteca / Android / sdk / ferramentas-plataforma / sdk / ferramentas-plataforma /" >> ~ / .bash_profile

Tobrun
fonte
2
O penúltimo passo na etapa anterior é "Reiniciar Terminal" :)
Brijesh Thakur
14
Terminal de Restart não deve ser necessário, recarregar o arquivo deve ser suficiente
Tobrun
Atualização: provavelmente não funciona para você porque você está usando várias guias. Cada guia do seu terminal tem sua própria sessão. Portanto, recarregue o arquivo .bash_profile na guia do comando "adb version".
Tobrun
2
pode usar export PATH = $ PATH: $ HOME / Library / Android / SDK / platform-tools /, apenas copiar e colar e não há necessidade de mudar o nome de usuário
Mohit
1
Removai a parte sdk/platform-tools/no final, pois isso estava me dando um aviso de festa no Android Studio.
Ryan R
64

Alternativa: instale o adb da maneira mais fácil

Se você não quiser se preocupar com seu caminho ou atualizar o adb manualmente, use o homebrew .

brew cask install android-platform-tools

brismuth
fonte
1
Muito, muito melhor do que tentar mexer com PATH, .bash_profile etc. Obrigado!
smets.kevin
yup c [_] ~ ᒡ ◯ ᵔ ◯ #
Adam Mendoza
Para sua informação, agora isso indica o erro: Erro: Nenhuma fórmula disponível com o nome "android-platform-tools". Use: instale a instalação Caskroom / cask / android-platform-tools
The Hungry Androider
@The Hungry Androider - fix it
brismuth
Eu não tentei isso, mas eu estou querendo saber se instala Android Estúdio, bem como com Homebrew, perguntando se isso poderia criar uma versão fora de sincronia problema no futuro ... apenas um pensamento
Kinergy
27

No meu Macbook Pro, adicionei as linhas de exportação em ~ / .bash_profile, não em .profile.

por exemplo

export PATH=/Users/me/android-sdk-mac_86/platform-tools:/Users/me/android-sdk-mac_86/tools:$PATH
David Snabel-Caunt
fonte
engraçado. Abri o arquivo ... Esta linha exata já estava lá. Acho eclipse acrescentou que durante a instalação do plug-in?
Skokey #
É possível, embora eu tenha acrescentado o meu.
David Snabel-Caunt
De acordo com johnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-x você pode ter perfis conflitantes
David Snabel-Caunt
Eu acho que é exatamente esse o problema. Outro aplicativo (acho MacPorts) criado .profile
Skoko
1
Não se esqueça de reiniciar o terminal depois de adicionar ao PATH.
Adam Johns
13

Basta envolver qualquer pessoa que encontre esta postagem de SO ao usar o Android Studio, que inclui o SDK que faz parte do pacote de aplicativos (no Mac OSX).

Então, como @davecaunt e @ user1281750 observaram, mas insira a seguinte linha em .bash_profile

export PATH=/Applications/Android\ Studio.app/sdk/tools:/Applications/Android\ Studio.app/sdk/platform-tools:$PATH
scottyab
fonte
Impressionante! Thx scottyab!
rilar 13/09
Como alternativa, ele está localizado em Usuários / [usuário] / Android / sdk / platform-tools .... Não gosto de vincular à pasta Aplicativos (talvez seja apenas eu).
Adam
13

A resposta para o MAC deve ser:

  1. Abra seu bash_profile com os seguintes comandos: open ~/.bash_profile

  2. Caso o arquivo de perfil base não exista, crie um novo com o seguinte comando: touch .bash_profilerepita a fase 1.

  3. Adicione a seguinte linha: export PATH=/Users/"YOURUSER"/Library/Android/sdk/platform-tools:$PATH

  4. Reinicie sua janela do bash e teste digitando adb shell

Boa sorte! :-)

Avi Levin
fonte
9

No seu terminal, navegue até o diretório inicial

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 é muito importante, verifique se adb foi definido no caminho

adb version

Deve estar bem agora.

kotini tirumula
fonte
8

Eu uso o zsh e o Android Studio. Eu uso uma variável para o meu caminho do SDK do Android e configuro no arquivo ~/.zshrc:

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

Nota: Certifique-se de não incluir aspas simples ou duplas no caminho especificado. Se você fizer isso, não vai funcionar.

colabug
fonte
7

O Android Studio v1.2 instala a ferramenta adb neste caminho:

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

Então é assim:

  1. Executar terminal
  2. executar adb versione esperar uma saída de erro
  3. touch ~/.bash_profile
  4. open ~/.bash_profile
  5. adicione o caminho acima antes do 'fechamento': $ PATH
  6. source ~/.bash_profile
  7. executar adb versione esperar uma saída

Boa sorte!

nurnachman
fonte
3

Parece que você ainda está tentando executar adbcom ./adb. Isso solicita que o shell execute o programa nomeado adb no diretório de trabalho atual .

Tente apenas adbsem ./.

sarnold
fonte
Tentei isso também. Nada. Isso está me deixando seriamente louco.
Skoko
@ user569594: você reiniciou o seu shell após a edição .profile? (ou seja, se você echo $PATHantes adb, você vê os novos diretórios?)
sarnold
sim, eu mencionei isso na pergunta. Ele aparece no eco, bash por algum motivo, simplesmente NÃO PODE VÊ-LO.
Skokka #
@ user569594: desculpe, tive que perguntar, já vi pessoas editando seus scripts de inicialização do shell, testando suas alterações iniciando um novo shell e esquecendo de reiniciar o shell atual e se perguntando onde ele falha ... :)
sarnold
Sim, fiz questão de reiniciar. O problema estava em ter dois perfis no meu diretório pessoal. Um .bash_profile e um .profile
skoko
3

Para fazer com que o terminal sempre tenha o arquivo ~/.bashrce coloque o caminho que você deseja usar, adicionando:

export PATH=$PATH:/XXX

onde XXX é o caminho que você deseja usar.

para adb, aqui está o que eu uso:

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

(onde "usuário" é o meu nome de usuário).

desenvolvedor android
fonte
1

Eu adicionei export PATH=${PATH}:/Users/mishrapranjal/android-sdks/platform-tools/nos dois lugares .bash_profilee .profilepara garantir que funcione. Ainda não estava funcionando e então olhei para a dica de Sarnold sobre como reiniciar o terminal e funcionou como um encanto. Isso economizou meu tempo de adicionar toda vez que isso acontecia PATHsempre que eu tinha que executar adb. Obrigado pessoal.

Pranjal
fonte
Em vez de relançar o seu terminal, você pode usar o seguinte comando para recarregar o arquivo: " .
.Bash_profile
0

Se alguém não conseguir chegar ao .bash_profilearquivo para pegar novos caminhos E você tiver outros comandos nesse arquivo (como comandos de alias), tente mover as instruções PATH para a parte superior do arquivo.

Essa é a única coisa que funcionou para mim. A razão pela qual funcionou foi porque eu tive alguns erros de digitação nos meus comandos de apelido e, aparentemente, esse arquivo gera um erro e sai se ocorrer algum problema. É por isso que minhas instruções PATH não estavam sendo executadas. Movendo-o para o topo, deixe-o executar primeiro.

JoshJoe
fonte
0

insira a descrição da imagem aqui

A segunda solução é explicada abaixo. Mas quando fecho o terminal, a alteração que fiz na variável path se perde. Assim, eu prefiro o primeiro caminho!

insira a descrição da imagem aqui

metis
fonte