Wiem, że ten numer był publikowany wiele razy, ale wydaje mi się, że to inny problem.
Rzeczywiście, ten błąd
Ostrzeżenie: require (vendor / autoload.php): nie udało się otworzyć strumienia: nie ma takiego pliku lub katalogu w C: \ xampp \ htdocs \ site_web \ send_mail.php w wierszu 3
Błąd krytyczny: require (): nie powiodło się otwieranie wymaganego 'vendor / autoload.php' (include_path = 'C: \ xampp \ php \ PEAR') w C: \ xampp \ htdocs \ site_web \ send_mail.php w linii 3
pojawia się na początku mojego kodu z tej linii:
require 'vendor/autoload.php';
Więc wydaje mi się, że gdzieś na moim komputerze musi znajdować się plik /vendor/autoload.php (zainstalowałem program Composer i uruchomiłem composer require phpmailer/phpmailer
).
Więc szukałem tego pliku przy użyciu: dir /s autoload.php
w wierszu polecenia systemu Windows, a znaleziono je tutaj: C:\Windows\SysWOW64\vendor\autoload.php
,
ale dla mnie folder syswow64 nie ma nic do oglądania z autoload.php , nie widzę, czego tu brakuje.
źródło
Odpowiedzi:
Brakuje Ci uruchomionego narzędzia
composer install
, które zaimportuje pakiety i utworzy folder dostawcy wraz ze skryptem automatycznego ładowania.Upewnij się, że ścieżka względna jest poprawna. Na przykład przykładowe skrypty w PHPMailer znajdują się
examples/
poniżej katalogu głównego projektu, więc prawidłowa ścieżka względna do załadowania autoloadera kompozytora z tego miejsca będzie../vendor/autoload.php
.Autoload.php, który znalazłeś,
C:\Windows\SysWOW64\vendor\autoload.php
jest prawdopodobnie globalną instalacją kompozytora - gdzie zwykle umieszczasz takie rzeczy jak phpcs, phpunit, phpmd itp.composer update
to nie to samo i prawdopodobnie nie to, czego chcesz użyć. Jeśli twój kod jest testowany z twoimi aktualnymi wersjami pakietu, uruchomienieupdate
może spowodować awarie, które mogą wymagać dalszej pracy i testowania, więc nie uruchamiaj,update
chyba że masz konkretny powód i dokładnie rozumiesz, co to znaczy. Aby wyjaśnić dalej - prawdopodobnie powinieneś uruchamiać się tylkocomposer update
lokalnie, nigdy na serwerze, ponieważ istnieje duże prawdopodobieństwo, że aplikacje zepsują się w środowisku produkcyjnym.Często widzę skargi, że ludzie nie mogą używać narzędzia Composer, ponieważ nie mogą go uruchomić na swoim serwerze (np. Ponieważ jest współdzielony i nie mają dostępu do powłoki). W takim przypadku możesz nadal korzystać z narzędzia Composer: uruchom go lokalnie (środowisko, które nie ma takich ograniczeń) i prześlij folder lokalnego dostawcy, który wygeneruje, wraz ze wszystkimi innymi skryptami PHP.
Uruchomienie wykonuje
composer update
również acomposer install
, a jeśli obecnie nie maszvendor
folderu (tj. Masz nowe pobranie projektu), tocomposer install
skutecznie wykonuje acomposer update
, ale nadal ważne jest, aby zrozumieć różnicę między nimi, ponieważ zdecydowanie nie są one zamienne.Zwróć uwagę, że można również zaktualizować pojedynczy pakiet, nadając mu nazwę, na przykład:
Spowoduje to ponowne rozwiązanie wersji określonej w pliku
composer.json
i zainstalowanie go w folderze dostawcy oraz zaktualizowaniecomposer.lock
pliku, aby był zgodny. Jest to znacznie mniej prawdopodobne, że spowoduje to problemy niż ogólne,composer update
jeśli potrzebujesz tylko określonej aktualizacji do jednego pakietu.Composer 2.0 (wkrótce) powinien usunąć wszelkie pozostałe niespójności między wynikami instalacji i aktualizacji.
źródło
composer install
a następnie odczyta zawartość Twojegocomposer.json
pliku i zainstaluje wszystkie zależności wvendor
folderze. Jeśli tego nie robi, mogę tylko zasugerować przeczytanie dokumentów, które wskazałem i dwukrotne sprawdzenie wszystkich. Na tym polega różnica między „wysyłaniem” a „wdrażaniem”.Jeśli pojawi się błąd również podczas uruchamiania
Po prostu uruchom najpierw to polecenie
To polecenie wyczyści wszystkie skompilowane pliki i ich ścieżki.
źródło
@Bashir prawie mi pomógł, ale potrzebowałem:
Odpowiedź znalazłem tutaj: https://laracasts.com/discuss/channels/general-discussion/fatal-error-class-illuminatefoundationapplication-not-found-in-pathtoprojectbootstrapappphp-on-line-14?page=0
źródło
Najpierw upewnij się, że masz zainstalowany kompozytor.
Jeśli już zainstalowałeś, zaktualizuj kompozytora.
źródło
Właściwa
autoload.php
konfiguracja:A) Szybka odpowiedź :
Twoja ścieżka autoload.php jest nieprawidłowa. to znaczy.
C:\Windows\SysWOW64\vendor\autoload.php
Do tej pory: musisz to zmienić na:C:\Users\<Windows User Name>\vendor\autoload.php
B) Kroki z przykładem: Jako przykład weźmiemy facebook / php-graph-sdk ; zmień na
Package Name
w razie potrzeby.CMD
composer require facebook/graph-sdk
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Secrets
iAccess Token
dla swojego pakietu ... itd.C) Dalsze szczegóły:
Zainstalowanie narzędzia Composer w systemie Windows spowoduje ustawienie tej domyślnej ścieżki dla pakietów; możesz je tam znaleźć i dołączyć ścieżkę do autoloadera:
Na to samo pytanie, które zadałeś; odpowiedzią była ta ścieżka dla WAMP Server 64 BIT dla Windows .
Następnie po prostu w aplikacji PHP zmień to:
Do:
Znajdź swoją nazwę użytkownika Windows pod
C:\Users\
Przed tym wszystkim, jak wskazano wcześniej w B), musisz uruchomić to polecenie:
na przykład dla facebook php SDK:
Dziękuję za zadanie tego pytania; doceniane, ponieważ pomogło mi rozwiązać podobny problem i zakończyło pisanie tego prostego samouczka.
źródło
Jeśli sklonowałeś swój projekt z Github lub pobrałeś go z innego miejsca, napotkasz ten błąd. Dzieje się tak, ponieważ brakuje Ci folderu dostawcy i innych plików. Folderu sprzedawca zawiera pakiety, które są zależne do projektu. Zależności pakietów są przechowywane w
composer.json
pliku, a folder został wykluczony podczas wypychania do Github .Napraw ten błąd, uruchamiając po prostu:
composer install
Otrzymasz wtedy wszystkie zasoby potrzebne do swojego projektu.
źródło
biegać
composer update
. Otóż toźródło
W mojej maszynie miałem taką ścieżkę:
Następnie uruchomiłem
composer install
lub / i zwróciłemcomposer update
ten błąd:Ten błąd wynika z tego, że twoja ścieżka jest zbyt długa, zmieniłem na:
i działało!
źródło
Najpierw przejrzyj trasę wewnątrz index.php
w moim przypadku trasa nie działała, musiałem przejrzeć katalogi.
źródło
Udało mi się to rozwiązać, usuwając program Composer i ponownie instalując go we właściwy sposób. Oto co zrobiłem:
Wtedy mogłem ponownie uruchomić instalację Composera. Znalazłem swoją odpowiedź na dole tego problemu: https://github.com/composer/composer/issues/5510
źródło
W folderze projektu brakuje folderu dostawcy, więc pojawił się ten błąd:
Gdy pobierasz projekt przez git , projekt jest pobierany bez folderu dostawcy
Potrzebujesz,
/vendor
ponieważ są tam wszystkie twoje pakiety, w tym wszystkie klasy używane przez Laravel. Katalog dostawcy zawiera zależności Composera.Rozwiązanie jest proste, po prostu uruchom to polecenie:
composer update --no-scripts
Pominie wykonywanie skryptów zdefiniowanych wcomposer.json
pliku.composer update
Zaktualizuje zależności, tak jak są one określone wcomposer.json
pliku.Za pomocą tego polecenia ponownie utworzysz folder dostawcy w swoim projekcie, a następnie projekt zacznie normalnie działać.
źródło
Będzie tam katalog o nazwie „sprzedawca”, który musi znajdować się w twoim katalogu głównym, jeśli masz sklonowane repozytorium i próbujesz skonfigurować w tym czasie tego typu błąd.
Plik „.gitingore” zawiera kod, aby nie uwzględniać katalogu dostawcy w GIT, więc po sklonowaniu GIT projekt staje przed problemem braku katalogu dostawcy.
Po dodaniu katalogu dostawcy projekt zacznie działać ponownie.
źródło
Utwórz plik composer.json z wymaganą biblioteką, na przykład:
Wykonaj poniższe polecenie, w którym istnieje plik composer.json:
W przypadku Drupala:
Użyj głównego folderu sieciowego drupal, aby włączyć automatyczne ładowanie np .:
W przypadku innych systemów: Użyj zmiennej lub lokalizacji folderu głównego, aby dołączyć plik autoload.php
źródło
Dla mnie Po prostu uruchom najpierw to polecenie
aby dodać folder dostawcy.
następnie uruchom to polecenie
zaktualizować kompozytora.
źródło
Ten błąd występuje z powodu braku niektórych plików, a głównym powodem jest „ Kompozytor ”
Najpierw uruchom te polecenia w CMD
Następnie utwórz nowy projekt
Przykład:
Następnie uruchom serwer za pomocą
źródło
Zmień właściwość auto_prepend_file na php.ini
źródło