Commande Drush introuvable après l'installation complète de Drush

11

J'ai installé Drush 8 avec composer.

composer require drush/drush:~8

Malheureusement, la commande error drush est introuvable après l'installation complète de Drush.

Pourquoi la commande drush ne peut-elle pas être utilisée?

entrez la description de l'image ici

Installation de Drush pour Drupal 8 avec Composer

https://www.youtube.com/watch?v=ZqY_XsCTmAc

JJ12345
la source
En supposant que votre php est 5.4.5 ou râpe, je me demande si ce "Build Failing" a quelque chose à voir avec votre problème.
Pas de Sssweat
@NoSssweat Merci. Comment puis-je le supprimer? Est-ce que cela supprime le composer.json?
JJ12345
Essayez ensuite d'installer Drush 9 master / dev.
Pas de Sssweat
composer global require drush/drush:dev-master
Pas de Sssweat

Réponses:

19

Une fois que vous avez installé Drush, vous devez vous assurer que votre répertoire ~ / vendor / bin est dans votre $ PATH, comme expliqué dans les instructions d'installation (Remarque: ce lien ne fonctionne plus)

Ajoutez export PATH="$HOME/.composer/vendor/bin:$PATH"à votre ~ / .bash_profile ou ~ / .bashrc, puis exécutez source ~/.bash_profile(ou ~ / .bashrc).

Je vous déconseille d'installer Drush 9 via composer requirepour le moment. Rester avec Drush 8 est probablement le meilleur; si vous souhaitez utiliser Drush 9, utilisez une méthode d'installation plus simple, comme le téléchargement du fichier .phar, ou clonez le référentiel et exécutez-le composer installdans le répertoire dans lequel Drush a été cloné.

greg_1_anderson
la source
1
I would recommend against installing Drush 9 via composer require at this time.Merci pour l'info!
Pas de Sssweat
1
Quelle est la raison de ne pas installer Drush 9 via composer require?
Jimmy Ko
La version non stable de Drush nécessite certaines versions non stables de ses dépendances. Cela peut entraîner des complications, selon ce que vous faites. Généralement, vous contournez cela en définissant votre stabilité minimale, mais il est plus simple de simplement installer via une autre méthode. En passant, si vous êtes enclin à utiliser composer global requirepour quelque chose, veuillez consulter github.com/consolidation-org/cgr
greg_1_anderson
@JimmyKo La raison pour laquelle un Drush global n'est pas recommandé est qu'avec Drush 9+, les meilleures pratiques recommandent que Drush soit installé en tant que dépendance pour Drupal. Cela évite des problèmes avec une incompatibilité de version Drush, par exemple.
karolus
Si cela ne fonctionne toujours pas, `~ / .bash_profile` ou ~/.bashrcpeut avoir été modifié. Sauvegardez-le et trouvez-en un par défaut.
Chris Happy
11

En utilisant ssh sur mon hôte serveur, j'ai ajouté du drush à mon chemin en suivant les instructions du compositeur: Ajouter

    export PATH="$HOME/.composer/vendor/bin:$PATH"

dans votre ~ / .bash_profile ou ~ / .bashrc, puis exécutez la source ~ / .bash_profile (ou ~ / .bashrc)

Mais j'ai réussi

    drush status
    -bash: drush: command not found

    which composer
    /opt/cpanel/composer/bin/composer

    which drush   
    /usr/bin/which: no drush in (/home/mth/.composer/vendor/bin:/home/mth/.composer/vendor/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/cpanel/composer/bin:/home/mth/bin:/home/mth/bin)

En utilisant mon gestionnaire de fichiers cPanel, j'ai trouvé que je ne pouvais pas voir le dossier Composer caché, bien que j'aie vu d'autres dossiers et fichiers cachés (préfixe de point). Il s'avère que le compositeur se trouvait dans le dossier .config. J'ai ajouté le nouveau dossier à mon $ PATH et à mon bingo!

    export PATH="$HOME/.config/composer/vendor/bin:$PATH"   

Heures! Moral? Vérifiez l'emplacement du compositeur.

mfuller526
la source
0

Vous devez vous assurer qu'il drushse trouve dans votre PATHvariable d' environnement , ou vous pouvez spécifier le dossier d'installation en définissant COMPOSER_BIN_DIR, par exemple:

sudo COMPOSER_HOME=/var/lib/composer COMPOSER_BIN_DIR=/usr/local/bin COMPOSER_VENDOR_DIR=/var/lib/composer/vendor composer require drush/drush:~8

Ou il est beaucoup plus facile de l'installer via Phar, par exemple sous Linux:

sudo install <(curl http://files.drush.org/drush.phar) /usr/local/bin/drush

Sur OS X, essayez: brew install drush.

Kenorb
la source
0

Maintenant, bien que mes problèmes soient liés à une installation de Composer Scaffold pour Drupal 8 qui nécessite que Drush (dans ce cas v.9) soit installé en tant que dépendance, moi aussi, j'avais des problèmes similaires. Même si un Drush global n'est plus recommandé, en raison de problèmes de dépendance, il est très pratique d'appeler Drush de n'importe où.

Ce que je recommanderais d'installer est Drush Launcher , qui vous donnera la possibilité d'appeler Drush de n'importe où, même si vous exécutez différents projets en utilisant différentes versions de Drush. Je le fais fonctionner localement et sur mes serveurs Web, et ça fonctionne bien là-bas. Cela a résolu mes problèmes de vision drush: command not found, même lorsque j'avais des projets où Composer avait correctement installé Drush.

Karolus
la source