Jakie są różnice między „php artisan dump-autoload” i „composer dump-autoload”?

183

Jestem całkiem nowy w Laravel 4 i Composer. Chociaż wykonuję samouczki Laravel 4, nie mogłem zrozumieć różnicy między tymi dwoma poleceniami; php artisan dump-autoloadi composer dump-autoloadjaka jest między nimi różnica?

Naing Lin Aung
źródło
22
tylko dla podkreślenia, php artisan dump-autoloadnie jest uwzględniony w L5
Jimmy Obonyo Abor

Odpowiedzi:

168

Autoload Laravela jest nieco inny:

1) W rzeczywistości użyje Kompozytora do niektórych rzeczy

2) Wywoła Composer z flagą optymalizacji

3) „Zrekompiluje” mnóstwo plików, tworząc ogromny bootstrap / compiled.php

4) A także znajdzie wszystkie twoje pakiety Workbench i kompozytor dump-autoload je, jeden po drugim.

Antonio Carlos Ribeiro
źródło
16
Ale nadal musisz uruchomić kompozytora dump-autoload, a także rzemieślnika dump-autoload, aby wszystkie autoloady działały poprawnie. Przykład: po migracji: make, potrzebujesz kompozytora zrzutu automatycznego autoloadu, aby wykonać migrację: wycofanie. artisan dump-autoload tutaj nie działa.
woens
59

php artisan dump-autoload był przestarzały na Laravel 5, więc musisz go użyć composer dump-autoload

Lucas Bustamante
źródło
To jest poprawne. Aby uzyskać więcej informacji: laravel.com/docs/5.8/seeding#running-seeders
AlmostPitt
37

kompozytor zrzut-autoload

PATH vendor/composer/autoload_classmap.php
  • Kompozytor dump-autoload niczego nie pobierze.
  • Ponownie generuje listę wszystkich klas, które muszą zostać uwzględnione w projekcie (autoload_classmap.php).
  • Idealny, gdy masz nową klasę w swoim projekcie.
  • autoload_classmap.php obejmuje również dostawców w config / app.php

php artisan dump-autoload

  • Wywoła Composer z flagą optymalizacji
  • „Zrekompiluje” mnóstwo plików, tworząc ogromny plik bootstrap / compiled.php
rajangupta
źródło
1
php artisan dump-autoload jest przestarzały na Laravel 5, więc musisz użyć kompozytora dump-autoload
rajangupta