Jak umieścić katalog ~ / .composer / vendor / bin w ŚCIEŻCE?

232

Korzystam z Ubuntu 14.04 i próbowałem wszystkich możliwych metod, aby zainstalować Laravel bezskutecznie. Komunikat o błędzie wszystko, co próbuję. Próbuję teraz pierwszej metody w dokumentacji szybkiego startu, to znaczy za pomocą instalatora Laravel, ale mówi ona: „Pamiętaj, aby umieścić ~/.composer/vendor/binkatalog w swoim PATHpliku, aby plik wykonywalny Laravel został znaleziony po uruchomieniu polecenia Laravel w terminalu”. więc moje pytanie brzmi: jak to zrobić? To może być proste pytanie, ale jestem naprawdę sfrustrowany i doceniłbym każdą pomoc.

which1ispink
źródło

Odpowiedzi:

520

Aby umieścić ten folder w typie zmiennej środowiskowej PATH

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

Spowoduje to dodanie folderu do istniejącej ŚCIEŻKI, jednak jest on aktywny tylko dla bieżącej sesji terminala.

Jeśli chcesz, aby był ustawiany automatycznie, zależy to od używanej powłoki. W przypadku bash możesz dołączyć ten wiersz do $HOME/.bashrcswojego ulubionego edytora lub wpisać następujące polecenie w powłoce

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc

Aby sprawdzić, czy zadziałało, wyloguj się i zaloguj ponownie lub uruchom

source ~/.bashrc

na skorupce.

PS: W przypadku innych systemów, w których ich nie ma ~/.bashrc, możesz to również wprowadzić~/.bash_profile

PSS: Więcej niedawnej laravel trzeba umieścić $HOME/.config/composer/vendor/binna PATH.

PSSS: Jeśli chcesz umieścić ten folder na ścieżce również dla innych powłok lub GUI, powinieneś dołączyć wspomniane exportpolecenie do ~/.profile(por. Https://help.ubuntu.com/community/EnvironmentVariables ).

MrTux
źródło
1
Działa jak urok tutaj, na Ubuntu 14.04. Możesz się wylogować / zalogować i / lub otworzyć nowe okno terminala, jeśli coś nie działa.
Michiel,
4
Powinieneś użyć $HOMEzamiast ~w ścieżce kompozytora. Nie jestem pewien co do bash, ale z pewnością jest to konieczne, gdy ustawiasz go w Zsh .zshrc.
phaberest
40
Należy zauważyć, że w Ubuntu 16.04 z systemem Laravel 5.1 ścieżka jest następująca: ~ / .config / composer / vendor / bin
waweru
1
Próbowałem tego, bez powodzenia! Nie mam również katalogu o nazwie ./composer/vendor. Mam tylko .composer, a tam mam folder pamięci podręcznej. Od 2 dni szukam.
nclsvh
1
echo 'export PATH = "$ PATH: $ HOME / .config / composer / vendor / bin"' >> ~ / .bashrc brakowało katalogu .config NASTĘPNIE uruchom źródło ~ / .bashrc
cecil merrel aka bringrainfire
137

Szczegółowe instrukcje:

w ~ / .bashrc dodaj następujące linie:

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

Następnie załaduj ponownie:

source ~/.bashrc

Sprawdź, czy został poprawnie dodany:

echo $PATH

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/web/bin:~/.composer/vendor/bin
Alexander Kim
źródło
Dzięki! Nie jestem zbyt obeznany z Uniksem i to miało całkowity sens! (I dolary!)
sunnysidedown916
To, co echo $ PATH, nie obejmuje części kompozytorskiej. Dosłownie dodałem go ponad 100 razy na wszystkie możliwe sposoby, zrestartowałem około 5 razy przeładowanego bashrc .. nic. Dowolny pomysł?
nclsvh
source ~ / .bashrc --- Muszę to robić za każdym razem, gdy powinienem laravela. To najlepsza odpowiedź dla mnie
Brainmaniac,
54

W Ubuntu 16.04 LTS z globalnie zainstalowanym kompozytorem to działało dla mnie.

Zmodyfikuj plik .bashrc w katalogu domowym, umieszczając ścieżkę do folderu bin kompozytora, który znajduje się w /twoj/home/.config/composer/vendor/bin

echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc

source ~/.bashrc

Jeśli nie działa, sprawdź ścieżkę do katalogu bin kompozytora, a następnie zamknij i ponownie otwórz terminal. W przeciwnym razie spróbuj się wylogować i zalogować w Ubuntu.

Działa również w Ubuntu 18.04. Dzięki @chifliiiii za Twoją opinię.

Vagner Leitte
źródło
1
Współpracował z Parrot OS 3.8
Abdelsalam Shahlol
1
Działa to po uruchomieniu instalatora laravel kompozytora, zmienia katalog na Zmieniono katalog bieżący na /home/username/.config/composer ./composer.json został zaktualizowany zgodnie ze ścieżką w tej odpowiedzi
ottz0
1
Ten działał dla mnie na Ubuntu 17.10. Dzięki.
GabMic
36

Aby ustawić PATH na Yosemite (OS X 10.10.5), użyj poniższego polecenia:

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bash_profile

Aby ponownie załadować albo zamknąć terminal i uruchomić ponownie, albo użyj:

source ~/.bash_profile

Pomógł mi, mam nadzieję, że pomoże to komuś innemu!

Forca001
źródło
2
Dziękuję @ forca001 w moim, .zshrcże nie działało, ~a nareszcie to zrobiło$HOME
phaberest
4
Miły! Działa to również dla mnie w Mac OS X El-Captain.
Askar
1
To jedyna odpowiedź, która zadziałała na moim komputerze Mac z systemem OSX Mojave. Dzięki stosy!
Ryan Coolwebs,
To powinna być zaakceptowana odpowiedź. Współpracował z MacOS Majave 14.x
OMi Shah,
15

Zrobiłem wszystkie powyższe i to nie działało dla mnie.

Właśnie skopiowałem to do mojego terminalu i zadziałało to dla mnie.

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
grit45
źródło
1
@ grit45 czy możesz wyjaśnić, dlaczego to trochę zadziałało
Abhishek Goel
To pytanie dotyczy umieszczenia katalogu na ścieżce, a nie sposobu instalacji kompozytora.
MrTux,
9

Służy do ustawiania ŚCIEŻKI w systemie Mac OS X w wersji 10.9.5.

Próbowałem dodać $ HOME, ponieważ korzystam z profilu użytkownika:

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc

Gdy nie korzystasz z profilu użytkownika:

echo 'export PATH="$PATH:~/.composer/vendor/bin"' >> ~/.bashrc

Następnie załaduj ponownie:

source ~/.bashrc

Mam nadzieję, że ci to pomoże.

akbarbin
źródło
4

Otwórz terminal Mac:

vi ~/.bashrc

Jeśli nie używałeś vi, może to początkowo wyglądać trochę śmiesznie, więc ostrożnie wpisz następujący kod, aby:

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

PRASA ESC

:
w

NACIŚNIJ ENTER

:
q

NACIŚNIJ ENTER

Teraz powinieneś powrócić do normalnego widoku terminala.

Sprawdź, czy kompozytor ma teraz poprawną ścieżkę:

cd ~/.composer
echo $PATH

Jeśli zobaczysz ścieżkę zawierającą katalog plików (np. /Users/JeffStrongman/.composer/vendor/bin), możesz zacząć.

cd

Następnie uruchom instalację. Napotkałem ten problem podczas konfigurowania komputera Mac do korzystania z Laravel Valet.

Przykład (opcjonalnie)

valet install
Darren Murphy
źródło
3

W przypadku Linux Mint 18: edytuj ~ / .bashrc i dodaj do niego ten wiersz na dole:

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

następnie zasób .bashrc (wpisz w konsoli):

source ~/.bashrc (or close and reopen the terminal)

przetestuj to, wpisując w konsoli:

echo $PATH

lub wpisz w konsoli:

laravel
Martijn van der Bruggen
źródło
3

dodaj zmienną środowiskową do bashrcpliku

W przypadku Ubuntu 17.04 i 17.10:

echo 'export PATH="~/.config/composer/vendor/bin"' >> ~/.bashrc

Dla Ubuntu 18.04

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc

sprawdzić zmienną środowiskową, która działa lub nie najpierw ładuje ponownie bashrcplik

source ~/.bashrc

jeśli nie działa żadna metoda, najpierw sprawdź, gdzie jest zainstalowany Composer, aby sprawdzić Uruchom to polecenie:

locate composer -l 1

następnie Kopiuj dane wyjściowe dodaj dane wyjściowe do tego wiersza i ponownie uruchom polecenie.

 echo 'export PATH="OUTPUTHERE/vendor/bin"' >> ~/.bashrc

Po pomyślnym zakończeniu pracy polecenia Laravel Zezwól na folder nadrzędny (na przykład używasz serwera apache niż zezwalasz na katalog apache sieci WWW w ten sposób)

sudo chown $USER:$USER -R /var/www/html/
Jignesh Joisar
źródło
2

Dodanie PATH eksportu = "$ PATH: ~ / .composer / vendor / bin" do ~ / .bashrc działa w twoim przypadku, ponieważ potrzebujesz go tylko po uruchomieniu terminalu.
Dla zachowania kompletności, dodanie go do PATH w / etc / environment ( sudo gedit / etc / environment i dodanie ~ / .composer / vendor / bin w PATH) będzie również działać, nawet jeśli jest wywoływane przez inne programy, ponieważ jest to system -szeroka zmienna środowiskowa.
https://help.ubuntu.com/community/EnvironmentVariables

Yoseph
źródło
2

moja ścieżka nie miała /.kompozytora, po prostu / kompozytora, więc moja ścieżka to: -

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

To działało dla mnie na Ubuntu 20.04

Paul 501
źródło
1

Użytkownik systemu MacOS Sierra:

upewnij się, że masz MAAP i MAAP Pro z folderu aplikacji, jeśli masz go zainstalowanego na swoim komputerze

być w katalogu głównym cd ~ sprawdź homebrew (jeśli masz zainstalowany homebrew) LUB posiadaj PHP na bieżąco

brew install php70

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

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bash_profile

source ~/.bash_profile

cat .bash_profile

upewnij się, że to pokazuje: export PATH = "$ PATH: $ HOME / .composer / vendor / bin"

laravel

teraz powinno być globalne

cphelps987
źródło
1

Dla Ubuntu 16.04

echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc

source ~/.bashrc
WaLid LamRaoui
źródło
Jaka jest poprawa istniejących odpowiedzi?
MrTux,
1

Katalog bin Composer jest ustawiony i przechowywany w bin-dirzmiennej config i może różnić się w zależności od konfiguracji. Uruchomienie polecenia composer global config bin-dir --absolutepokaże bezwzględną ścieżkę do katalogu bin globalnego kompozytora. Za pomocą tego polecenia możesz zmodyfikować swój, .bash_profileaby dodać go do PATHdokładnie tego, jak jest skonfigurowany.

# Add Composer bin-dir to PATH if it is installed.
command -v composer >/dev/null 2>&1 && {
        COMPOSER_BIN_DIR=$(composer global config bin-dir --absolute 2> /dev/null)
        PATH="$PATH:$COMPOSER_BIN_DIR";
}
export PATH
Anthony Hatzopoulos
źródło
1

Zrobiłem to i działa na OSX:

zjedz swój terminal

 nano ~/.bash_profile 

I wklej

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

naciśnij klawisze Control + x

naciśnij klawisz y

naciśnij klawisz powrotu / enter

Adeojo Emmanuel IMM
źródło
1

AWS Ubuntu 18.04 LTS

Linux ws1 4.15.0-1023-aws # 23-Ubuntu SMP Mon Sep 24 16:31:06 UTC 2018 x86_64 x86_64 x86_64 GNU / Linux

echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc && source ~/.bashrc

Pracował dla mnie.

Jacou Mata
źródło
Jaka jest poprawa istniejących odpowiedzi?
MrTux,
1

W Fedorze:

Niektóre pojemniki kompozytora nie znajdują się w katalogu .composer. Musisz je zlokalizować, używając:

locate composer | grep vendor/bin

Następnie powtórz część w pliku .bashrc

echo 'export PATH="$PATH:$HOME/{you_composer_vendor_path}"' >> ~/.bashrc

Mój był na "/.config/composer/vendor/bin" zdrowie!

Andino Inyang
źródło
0

to właśnie dodałem do mojego pliku .bashrc i działałem.

export PATH="$PATH:/home/myUsername/.composer/vendor/bin"

Patrick Mutwiri
źródło
0

W przypadku, gdy ktoś używa ZSH, wszystkie kroki są takie same, z wyjątkiem kilku rzeczy:

  1. Znajdź plik .zshrc
  2. Dodaj następujący wiersz na dole export PATH=~/.composer/vendor/bin:$PATH
  3. source ~/.zshrc

Następnie spróbuj valet, jeśli poprosi o hasło, wszystko jest w porządku.

Alexander Kim
źródło
-1

Aby rozwiązać ten problem, najpierw sprawdź ścieżkę do pliku composer.phar

mój przykład jest podobny do tego

alias composer="php /Users/Your-username/composer.phar"

Przejdź do cd Users> Twój użytkownik> Command ls i sprawdź, czy jest tam composer.phar, jeśli tak, to dodaj powyższą linię do .bash_profile. Upewnij się, że zmieniłeś nazwę użytkownika na własną.

Mam nadzieję, że to ci pomoże

Muhammad Hayat
źródło