Essayer d'ajouter adb à la variable PATH OSX

121

J'essaie de développer pour Android et je souhaite ajouter le adbà mon PATHafin de pouvoir le lancer très facilement. J'ai déjà ajouté des répertoires par pour une raison quelconque, je adbne veux pas être trouvé. C'est très frustrant. Quelqu'un d'autre a-t-il déjà eu ce problème?

J'ai créé un fichier .profileet y ai ajouté les éléments suivants.

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

Lorsque je vérifie le chemin de mon environnement, je vois ce qui suit:

/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

Je sais donc qu'il est ajouté à ma PATHvariable. Maintenant, quand j'essaye de courir, adbje comprends qu'il n'est pas trouvé.

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

C'est très très frustrant. Cela pourrait-il être un problème avec les autorisations? Quelqu'un a-t-il eu ce problème avec OSX et Android?

skoko
la source
5
remarque: mettre des espaces avant et / ou après le signe égal pose des problèmes. cela devrait ressembler à "export PATH = $ {PATH}: / Users / simon / Libs / android-sdk-mac_x86 / tools"
Ben H

Réponses:

42

Pourquoi essayez-vous d'exécuter "./adb"? Cela ignore complètement la variable de chemin et ne recherche que "adb" dans le répertoire courant. Essayez plutôt d'exécuter "adb".

Edit: votre chemin semble faux. Vous dites que vous obtenez

/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

Il vous manque la partie / Users / simon.

Notez également que si vous avez à la fois des fichiers .profile et .bash_profile, seul ce dernier est exécuté.

Lac
la source
J'ai essayé à la fois ./adb et adb .. Rien, je n'ai aucune idée de ce qui ne va pas avec cela.
skoko
Où adb est-il censé se trouver? Vérifiez qu'il est là et qu'il a les droits d'exécution (cd dans le répertoire et faites ls -l adb).
LaC
1
Si je vais dans le répertoire, je peux l'exécuter sans problème. Voici la sortie. -rwxrwxrwx 1 simon staff 179312 28 février 02:48 adb
skoko
1
Merci pour cette réponse. Il s'avère que .profile et .bash_profile étaient tous les deux là. J'avais les valeurs en .profile et oui. Maintenant ça marche. Merci beaucoup les gars.
skoko
1
Fonctionne maintenant, je viens d'avoir deux profils. L'un a écrit l'autre. Si quelqu'un fait cela, utilisez .bash_profile pour éditer la variable de chemin. J'ai suivi un tutoriel différent qui disait d'utiliser
.profile
298

Ajouter à PATH pour chaque connexion

Version contrôle total :

dans votre terminal, accédez au répertoire de base

CD

créer le fichier .bash_profile

touchez .bash_profile

ouvrir le fichier avec TextEdit

ouvrir -e .bash_profile

insérer une ligne dans TextEdit

export PATH = $ PATH: / Users / username / Library / Android / sdk / platform-tools /

enregistrer le fichier et recharger le fichier

source ~ / .bash_profile

vérifier si adb a été défini dans le chemin

version adb


Une version doublure

Faites écho à votre commande d'exportation et redirigez la sortie à ajouter au fichier .bash_profile et redémarrez le terminal. (je n'ai pas vérifié cela mais devrait fonctionner)

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

Tobrun
la source
2
L'avant-dernière étape de l'étape ci-dessus est "Redémarrer le terminal" :)
Brijesh Thakur
14
Le redémarrage du terminal ne devrait pas être nécessaire, le rechargement du fichier devrait suffire
Tobrun
Mise à jour: cela ne fonctionne probablement pas pour vous car vous utilisez plusieurs onglets. Chaque onglet de votre terminal a sa propre session. Rechargez donc le .bash_profile dans l'onglet de la commande "adb version".
Tobrun
2
peut utiliser export PATH = $ PATH: $ HOME / Library / Android / sdk / platform-tools /, juste par copier-coller et pas besoin de changer le nom d'utilisateur
Mohit
1
J'ai supprimé le sdk/platform-tools/bit à la fin, car cela me donnait un avertissement bash dans Android Studio.
Ryan R
65

Alternative: installez adb en toute simplicité

Si vous ne voulez pas avoir à vous soucier de votre chemin ou de mettre à jour adb manuellement, vous pouvez utiliser homebrew à la place.

brew cask install android-platform-tools

brismuth
la source
1
Beaucoup, BEAUCOUP mieux que d'essayer de jouer avec PATH, .bash_profile etc. Merci!
smets.kevin le
yup c [_] ~ ᒡ ◯ ᵔ ◯ ᒢ
Adam Mendoza
FYI, cela donne maintenant l'erreur: Erreur: Aucune formule disponible avec le nom "android-platform-tools". Utilisez: brew installez Caskroom / cask / android-platform-tools à la place
The Hungry Androider
@The Hungry Androider - corrigé
brismuth
Je n'ai pas essayé cela, mais je me demande si l'on installe Android Studio ainsi qu'avec Homebrew, je me demande si cela pourrait créer un problème de désynchronisation de version à l'avenir ... juste une pensée
Kinergy
27

Sur mon Macbook Pro, j'ai ajouté les lignes d'exportation à ~ / .bash_profile, pas à .profile.

par exemple

export PATH=/Users/me/android-sdk-mac_86/platform-tools:/Users/me/android-sdk-mac_86/tools:$PATH
David Snabel-Caunt
la source
drôle. J'ai ouvert ce fichier ... Cette ligne exacte était déjà là. Je pense qu'eclipse a ajouté cela lors de l'installation du plug-in?
skoko le
C'est possible, même si j'ai ajouté le mien moi-même.
David Snabel-Caunt
Selon johnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-x, vous pouvez avoir des profils en conflit
David Snabel-Caunt
Je pense que c'est exactement ce qu'était le problème. Une autre application (je pense que MacPorts) a créé
.profile
1
N'oubliez pas de redémarrer le terminal après avoir ajouté à PATH.
Adam Johns
13

Encase quiconque trouve ce message SO lors de l'utilisation d'Android Studio qui inclut le SDK fait partie du package App (sur Mac OSX).

Donc, comme @davecaunt et @ user1281750 l'ont noté, mais insérez la ligne suivante dans .bash_profile

export PATH=/Applications/Android\ Studio.app/sdk/tools:/Applications/Android\ Studio.app/sdk/platform-tools:$PATH
Scottyab
la source
Impressionnant! Thx scottyab!
rilar le
Alternativement, il se trouve dans Users / [user] / Android / sdk / platform-tools .... Je n'aime pas créer un lien vers le dossier Applications (peut-être que c'est juste moi).
Adam
13

La réponse pour MAC devrait être:

  1. Ouvrez votre bash_profile avec les commandes suivantes: open ~/.bash_profile

  2. Dans le cas où le fichier de profil de base n'existe pas, créez-en un nouveau avec la commande suivante: touch .bash_profilepuis répétez la phase 1.

  3. Ajoutez la ligne suivante: export PATH=/Users/"YOURUSER"/Library/Android/sdk/platform-tools:$PATH

  4. Redémarrez votre fenêtre bash et testez en tapant adb shell

Bonne chance! :-)

Avi Levin
la source
9

Dans votre terminal, accédez au répertoire de base

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 est très important de vérifier si adb a été défini dans path

adb version

Ça devrait aller maintenant.

kotini tirumula
la source
8

J'utilise zsh et Android Studio. J'utilise une variable pour le chemin de mon SDK Android et je configure dans le fichier ~/.zshrc:

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

Remarque: veillez à ne pas inclure de guillemets simples ou doubles autour du chemin spécifié. Si vous le faites, cela ne fonctionnera pas.

colabug
la source
7

Android Studio v1.2 installe l'outil adb dans ce chemin:

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

Donc ça va comme ça:

  1. Exécuter le terminal
  2. exécuter adb versionet attendre une sortie d'erreur
  3. touch ~/.bash_profile
  4. open ~/.bash_profile
  5. ajoutez le chemin ci-dessus avant la 'fermeture': $ PATH
  6. source ~/.bash_profile
  7. exécuter adb versionet attendre une sortie

Bonne chance!

Nurnachman
la source
3

Il semble que vous essayez toujours d'exécuter adbavec ./adb. Cela demande au shell d'exécuter le programme nommé adb dans le répertoire de travail actuel .

Essayez juste adbsans ./.

sarnold
la source
J'ai essayé ça aussi. Rien. Cela me rend vraiment fou.
skoko
@ user569594: avez-vous redémarré votre shell après l'édition .profile? ( par exemple, si vous echo $PATHavant adb, voyez-vous les nouveaux répertoires?)
sarnold
oui, je l'ai mentionné dans la question. Il apparaît dans l'écho, bash pour une raison quelconque, NE PEUT PAS LE VOIR.
skoko
@ user569594: désolé, j'ai dû demander, j'ai vu des gens éditer leurs scripts de démarrage de shell, tester leurs modifications en démarrant un nouveau shell, et oublier de redémarrer leur shell actuel et se demander où il échoue ... :)
sarnold
Oui, je me suis assuré de redémarrer. Le problème résidait dans le fait d'avoir deux profils dans mon répertoire personnel. Un .bash_profile et un
.profile
3

Afin que le terminal ait toujours le fichier ~/.bashrcet y mettez le chemin que vous souhaitez utiliser, en ajoutant:

export PATH=$PATH:/XXX

où XXX est le chemin que vous souhaitez utiliser.

pour adb, voici ce que j'utilise:

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

(où "utilisateur" est mon nom d'utilisateur).

développeur android
la source
1

J'ai ajouté export PATH=${PATH}:/Users/mishrapranjal/android-sdks/platform-tools/aux deux endroits .bash_profileet .profilepour m'assurer que cela fonctionne. Cela ne fonctionnait toujours pas, puis j'ai regardé le conseil de sarnold sur le redémarrage du terminal et cela a fonctionné comme un charme. Cela m'a fait gagner du temps en ajoutant à chaque fois cela à PATHchaque fois que je devais courir adb. Merci les gars.

Pranjal
la source
Au lieu de relancer votre terminal, vous pouvez utiliser la commande suivante pour recharger le fichier: " . .Bash_profile "
Tobrun
0

Si quelqu'un n'arrive pas à accéder au .bash_profilefichier pour prendre de nouveaux chemins ET que vous avez d'autres commandes dans ce fichier (comme des commandes d'alias), essayez de déplacer les instructions PATH en haut du fichier.

C'est la seule chose qui a fonctionné pour moi. La raison pour laquelle cela a fonctionné était parce que j'avais des fautes de frappe dans mes commandes d'alias et apparemment, ce fichier génère une erreur et se termine s'il rencontre un problème. C'est pourquoi mes instructions PATH n'étaient pas exécutées. En le déplaçant vers le haut, laissez-le fonctionner en premier.

JoshJoe
la source
0

entrez la description de l'image ici

La deuxième solution est expliquée ci-dessous. Mais lorsque je ferme le terminal, le changement que j'ai effectué dans la variable de chemin est perdu. Ainsi je préfère la première manière!

entrez la description de l'image ici

métis
la source