it-swarm.com.de

Stecken. Installieren von Drush über Composer funktioniert nicht

Es sieht so aus, als hätte ich Drush gemäß den Anweisungen in der Dokumentation installiert.

Folgendes habe ich getan.

Jens-MacBook-Air:~ jensimmons$ composer --version
Composer version 1.0.0-alpha8 2014-01-06 18:39:59
Jens-MacBook-Air:~ jensimmons$ composer global require drush/drush:dev-master
Changed current directory to /Users/jensimmons/.composer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing pear/console_table (1.1.5)
    Downloading: 100%         

  - Installing symfony/yaml (v2.2.1)
    Downloading: 100%         

  - Installing d11wtq/boris (v1.0.8)
    Downloading: 100%         

  - Installing drush/drush (dev-master a2c7030)
    Cloning a2c703071e2c3374e1b3855e24d29468b9069b5c

pear/console_table suggests installing pear/Console_Color (>=0.0.4)
d11wtq/boris suggests installing ext-pcntl (*)
Writing lock file
Generating autoload files
Jens-MacBook-Air:~ jensimmons$ drush help
-bash: drush: command not found

Wenn ich die Verzeichnisse innerhalb einer Drupal -Installation) ändere, erhalte ich das gleiche Ergebnis. Drush: Befehl nicht gefunden.

Was vermisse ich??

6
jensimmons

Fügen Sie am Ende Ihrer Datei /Users/jensimmons/.bashrc Folgendes hinzu:

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

und dann laufen

source $HOME/.bashrc

Bearbeiten:

Ich habe gerade bemerkt, dass es einen Abschnitt im Abschnitt Install/Update - Composer der Drush README.md-Datei gibt, in dem Folgendes erwähnt wird:

https://github.com/drush-ops/drush#installupdate---composer

Es ist der zweite Punkt "Stellen Sie sicher, dass sich das globale bin-Verzeichnis von Composer auf dem Systempfad befindet (empfohlen)".

Ich hoffe, das hilft.

11
ylynfatt

Ich weiß nicht, warum sie dies nicht in die Anweisungen aufnehmen, aber Sie können einen symbolischen Link verwenden, um drush zu einem global ausführbaren Befehl zu machen:

Sudo ln -s /home/YOU/.composer/vendor/drush/drush/drush /usr/local/bin

Auf diese Weise müssen Sie sich nicht jedes Mal, wenn Sie sich anmelden, Gedanken darüber machen, source $HOME/.bashrc Auszuführen.

Passen Sie Ihr Home-Verzeichnis nach Bedarf an. ;)

4
Jon Pugh

für Ubuntu-Version

die erste Überprüfung ist Ihr composer Pfad wurde erfolgreich mit in Ihrer Umgebungsvariablen hinzugefügt,

Geben Sie in Ihrem Terminal evn ein und drücken Sie die Eingabetaste, um die verfügbaren Pfade zu überprüfen. composer Pfad sollte mit in der Variablen "PATH = ..." hinzugefügt werden

wenn composer Pfad fehlt, fügen Sie Ihren Pfad hinzu durch dieser Ansatz

wenn Ihr composer einwandfrei funktioniert), befolgen Sie die Schritte, um den neuesten Drush zu installieren

Schritt 1: Verwenden Sie diesen Cmd . Composer global erfordert drush/drush: dev-master

überprüfen Sie Ihre Drush-Version.

1
praveen61

Eine Antwort auf Jensimmons Frage in Ylynfatts Antwort:

Hm. Warten. Also gehe ich, höre auf, höre auf, an einer Sache zu arbeiten. Und kommen Sie später darauf zurück. Und Crush funktioniert nicht mehr. Wenn ich die Quelle $ HOME/.bashrc erneut ausführe, funktioniert es. Was kann ich tun, um dies dauerhaft zu machen?

(Ich kann dort keinen Kommentar posten, noch nicht genug Punkte):

kurze Antwort: Geben Sie .bash_profile: source ~/.bashrc ein

Lange Antwort (aus meinen Notizen, kann mich nicht an Originalquellen erinnern):

Wenn bash als interaktive Anmelde-Shell oder als nicht interaktive Shell mit der Option --login aufgerufen wird, werden zuerst Befehle aus der Datei/etc/profile gelesen und ausgeführt, sofern diese Datei vorhanden ist.
Nach dem Lesen dieser Datei sucht sie in dieser Reihenfolge nach ~/.bash_profile, ~/.bash_login und ~/.profile und liest und führt Befehle aus der ersten vorhandenen und lesbaren aus. ... Wenn eine interaktive Shell gestartet wird, die keine Anmeldeshell ist, liest bash Befehle von ~/.bashrc und führt sie aus, sofern diese Datei vorhanden ist. [/ etc/profile ist global, die nächsten 3 Dateien sind lokal. Dies kann sich jedoch ändern, je nachdem, wie die Shell aufgerufen wird. Also ...] Standardmäßig startet Terminal die Shell über/usr/bin/login, wodurch die Shell zu einer Login-Shell wird. Auf jeder Plattform (nicht nur unter Mac OS X) verwendet bash .bashrc nicht für Login-Shells (nur/etc/profile und das erste von .bash_profile, .bash_login, .profile, das vorhanden und lesbar ist). Aus diesem Grund ist das Einfügen von "source ~/.bashrc in Ihr .bash_profile" Standardempfehlung.

0
Mark

Composer

Probieren Sie den folgenden Einzeiler aus (wenn Sie Root-Rechte haben):

Sudo COMPOSER_HOME=/var/lib/composer COMPOSER_BIN_DIR=/usr/local/bin COMPOSER_VENDOR_DIR=/var/lib/composer/vendor composer require drush/drush:dev-master

dies würde das aktuelle drush direkt in /usr/local/bin installieren (Sie können COMPOSER_BIN_DIR frei ändern, wo immer Sie es installieren möchten, sodass composer eine richtige Symbolik erstellen würde Verlinkung für Sie).


Wenn Sie es lieber als Benutzer ausführen möchten, versuchen Sie Folgendes:

COMPOSER_BIN_DIR=~/bin composer require drush/drush:dev-master

dies würde das aktuelle drush in Ihrem lokalen ~/bin installieren (einige Betriebssysteme erkennen dieses Verzeichnis als ausführbare Binärdateien an), andernfalls fügen Sie die folgende Zeile in Ihr ~/.bashrc oder ~/.profile:

export PATH=$PATH:$HOME/bin

Phar

Versuchen Sie alternativ, Phar Binary wie unten gezeigt zu installieren.

Laden Sie die neueste stabile Version mit dem folgenden Befehl herunter:

Linux :

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

OS X/Unix :

Sudo wget -O /usr/local/bin/drush http://files.drush.org/drush.phar
Sudo chmod +x /usr/local/bin/drush

Windows und andere

Manuell herunterladen unter https://github.com/drush-ops/drush/releases

0
kenorb

Versuchen Sie, dies zu .bashrc hinzuzufügen

export PATH = ~/.config/composer/vendor/bin: $ PATH

0
Kaka Awira