Laravel 5 Gagal membuka diperlukan bootstrap /../ vendor / autoload.php

366

Saya baru saja menginstal Laravel 5 via komposer. Saya mencoba membuat pengontrol baru menggunakan artisan dan saya mendapatkan kesalahan berikut:

bootstrap /../ vendor / autoload.php. Gagal membuka aliran: Tidak ada file atau direktori seperti itu. Folder "vendor" tidak ada.

Apakah saya melewatkan sesuatu?

Scott
sumber

Jawaban:

307

Jalankan komposer dengan --no-skrip

composer update --no-scripts  

Ini akan memperbaiki masalah. Saya mencoba ini di Mac dan Linux.

Shubhamoy
sumber
14
Kadang-kadang ketika Anda menjalankan: "komposer instal" Anda mendapat kesalahan itu juga, jadi opsi terbaik adalah dijalankan pertama: "komposer instal --no-skrip" dan kemudian jalankan komposer instal secara normal.
herohat
3
Dokumentasi komposer: --tidak ada skrip: Melewati eksekusi skrip yang didefinisikan dalam composer.json. ( getcomposer.org/doc/03-cli.md#update )
Aine
Jauh lebih baik menggunakan pemasangan komposer, karena itu akan menjalankan semua yang diperlukan untuk menginstal semua dependensi, termasuk skrip.
Leandro Jacques
error Composer tidak dapat menemukan file composer.json di C: \ composer Untuk menginisialisasi proyek, silakan buat file composer.json seperti yang dijelaskan di bagian getcomposer.org "Persiapan"
PHPFan
composer installtidak bekerja untuk saya, composer update --no-scriptsmelakukan pekerjaan. Terima kasih!
endo64
137

OS apa yang Anda gunakan? Untuk Windows: Pergi keCommand Prompt

setel jalur ke www/{ur project}

Untuk saya : www/laravel5

Kemudian ketik perintah ini: composer install

Ini akan secara otomatis menginstal semua dependensi di vendor/

MONTS_MIND_Hacker
sumber
97

Jalankan composer installdi folder proyek root Anda (atau php composer.phar install).

dan-klasson
sumber
76

Ternyata saya tidak mengaktifkan openssl di php.ini saya jadi ketika saya membuat proyek baru saya dengan komposer itu diinstal dari sumber. Saya mengubahnya dan berlari

composer update

sekarang folder vendor telah dibuat.

Scott
sumber
57

Apakah Anda membuat proyek baru atau apakah Anda mengkloning proyek yang sudah ada?

Jika Anda mengkloning proyek yang sudah ada, sangat penting untuk dijalankan

composer install

Dengan begitu semua dependensi yang hilang akan diinstal.

Tetapi jika Anda membuat proyek baru, Anda harus menjalankan perintah ini untuk membuat proyek baru menggunakan komposer

composer create-project laravel/laravel name-of-your-project
Dimitri Acosta
sumber
23

Saya mengalami masalah yang sama. Itu terjadi karena komposer tidak dapat menginstal dependensi yang ditentukan dalam file composer.json. coba jalankan

composer install 

Jika ini tidak menyelesaikan masalah, pastikan modul-modul php berikut diinstal php-mbstring php-dom

Untuk menginstal ekstensi ini, jalankan terminal berikut ini

sudo apt-get install php-mbstring php-dom

setelah instalasi selesai

coba jalankan perintah di folder root proyek Anda

composer install 
naveddeshmukh
sumber
4
Saya menginstal php-xml untuk membuatnya berfungsi daripada php-dom (yang tidak ada di 16.04).
Evan Carroll
1
Bagus!!! Berhasil !! Menginstal php-xml bukan php-dom adalah tindakan default untuk apt-get di ubuntu 16.04
user2928048
1
ini bekerja setelah menginstal mbstring dan php-dom. Terima kasih!
terpecah
21

Jalankan saja ini di dalam direktori tempat Anda menginstal proyek Anda

composer install
Williem
sumber
1
Saya melakukan ini dan itu berhasil, tetapi mengapa? Saya ingin mengerti alasannya.
Simon Suh
1
@SimonSuh karena beberapa alasan (kegagalan jaringan, proyek baru dibuat tanpa melalui semua perintah, kesalahan selama instalasi manual, custom build install ...) dependensi komposer di mana tidak ada yang diinstal atau tidak mutakhir. perintah ini akan menginstal dan memperbarui semua dependensi proyek Anda dan itu akan memperbaiki masalah. harap itu sudah cukup
Williem
20

Anda perlu membuat ulang autoload.phpfile. Anda dapat menggunakannya dump-autoloaduntuk melakukan itu tanpa harus melalui instalasi atau pembaruan.

menggunakan

composer dump-autoload

untuk menghasilkan autoload.phpfile lagi di /vendordirektori.

Hamid Parchami
sumber
Ini berfungsi untuk saya tetapi mengalami kesalahan ini Kesalahan fatal: Kelas 'Illuminate \ Foundation \ Application' tidak ditemukan.
Adnan haider
19

Mengikuti langkah di bawah ini menyelesaikan masalah saya. Anda boleh mencoba

composer update --no-scripts 
composer update
RASEL RANA
sumber
1
Memecahkan masalah saya juga! Terima kasih
Crysfel
1
Terima kasih banyak!
GeekHades
16

Setelah memeriksa phpversi dan banyak penelitian, masalahnya ada di Composersamping jadi jalankan saja perintah berikut

composer install --ignore-platform-reqs

Hashmat Waziri
sumber
6

Saat proyek baru dibuat, laravel harus memuat vendor untuk memuat perpustakaan secara otomatis, Kami menggunakan pembaruan komposer untuk

composer update

Komposer adalah manajer dependensi yang memungkinkan Anda mendelegasikan tanggung jawab untuk mengelola dependensi Anda kepada pihak ketiga.

Suresh Kumar Amrani
sumber
5

Cukup jalankan perintah berikut,

composer update

Atau

composer install
Raham
sumber
5

buka folder proyek Anda melalui cmd. jalankan perintah berikut

composer update

itu akan menginstal folder dan file vendor yang hilang di proyek Anda.

tetapi dalam beberapa kasus, ini memberikan kesalahan seperti "Konfigurasi Anda tidak memungkinkan koneksi ke ....." di cmd.

untuk itu buka file composer.json Anda ,

ubah "secure-http": trueke"secure-http": false

tetapi dalam beberapa kasus (seperti dalam kasus saya) Anda mungkin tidak menemukan baris tersebut di file Anda. untuk itu lakukan tindakan berikut:

change "config": {
        "preferred-install": "dist"
}

untuk

"config": {
    "preferred-install": "dist",
    "secure-http": false
}

dan jalankan lagi composer updateperintah.

Semoga ini akan menyelesaikan masalah.

Saadk
sumber
5

Solusi ini berhasil untuk saya. Alasannya bukan untuk memiliki folder vendor di aplikasi Anda.

Ikuti langkah ini:

  1. jika proyek Anda memiliki composer.jsonfile, hapuslah

  2. lalu lari

    composer require phpspec/phpspec

Perintah itu menambahkan folder vendor ke proyek Anda

Jayani Sumudini
sumber
4

Cukup siapkan proyek baru menggunakan composeralih-alih laravelseperti ini:

composer create-project --prefer-dist laravel/laravel myProje
Raheel Hasan
sumber
3

Saya juga mengalami kesalahan itu. Tapi tidak satu pun di atas memecahkan masalah. Jadi saya uninstall dan menginstal komposer lagi. Lalu aku melakukannya composer update. dan masalahnya telah diperbaiki.

Srijan Karki
sumber
setelahcomposer install
Hos Mercury
3

Saya memiliki masalah yang sama dengan laravel dan artisan, solusinya:

php artisan key:generate
Marcelo Agimóvel
sumber
2

Sebelum Anda melakukan instruksi berikut ini, Anda perlu memastikan Anda memiliki komposer yang terinstal secara global di mesin Anda; Buka terminal Mac Anda dan jalankan perintah berikut:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

setelah komposer diinstal secara global, jalankan perintah berikut setelah Anda berada di direktori proyek:

composer install

setelah selesai perbarui dan instal semua paket yang diperlukan.

Krishneil
sumber
2

Kami mendapat kesalahan karena kami memiliki folder vendor yang hilang dalam proyek kami, Direktori vendor berisi ketergantungan Composer kami.

Perlu /vendorfolder karena semua paket ada dan termasuk semua kelas yang digunakan Laravel, Masalah dapat diselesaikan setelah mengikuti hanya dua langkah:

composer update --no-scripts 
composer update
  • --no-skrip : Melewati eksekusi skrip yang didefinisikan dalamcomposer.json
  • pembaruan komposer : Ini akan memeriksa versi perpustakaan yang lebih baru yang Anda butuhkan dalam proyek Anda. Jika versi yang lebih baru ditemukan dan kompatibel dengan batasan versi yang ditentukan dalam composer.jsonfile, itu akan menggantikan versi sebelumnya yang diinstal. The composer.lockfile akan diperbarui untuk mencerminkan perubahan ini.

Dua perintah ini, kami akan membuat folder vendor di proyek kami dan setelah itu proyek kami akan bekerja dengan lancar.

Udhav Sarvaiya
sumber
1

Saya menambahkan composer.lockfile ke .gitignore, setelah mengkomit file itu ke kesalahan repositori hilang :)

Alupotha
sumber
1

Sesuatu yang saya sadari adalah file composer.json Anda akan memiliki semacam script

"scripts": {
    "post-root-package-install": [
        "php -r \"copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ],
    "post-install-cmd": [
        "php artisan clear-compiled",
        "php artisan optimize"
    ],
    "pre-update-cmd": [
        "php artisan clear-compiled"
    ],
    "post-update-cmd": [
        "php artisan optimize"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

apa yang bekerja untuk saya:

"scripts": {
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

menghapus post install cmdmembantu menjalankan pemasangan komposer tanpa masalah.

Semoga ini membantu

Bersulang!!

usrNotFound
sumber
1

Hapus folder vendor dan jalankan perintah install komposer. Ini bekerja 100%

orxanzadeh
sumber
1

Anda kehilangan folder vendor, mungkin repositori baru yang dikloning atau proyek baru

folder vendor diisi oleh biner komposer yang membaca file composer.json atau persyaratan sistem dan menginstal yang dikemas dalam folder vendor dan membuat skrip autoload yang semuanya telah digolongkan

composer update
AWS PS
sumber
1

Hapus Vendor lalucomposer install

Hassan Raza
sumber
0

Dalam kasus saya, saya harus mengaktifkan ekstensi lain, yaitu php_mbstring.dlldi php.inifile sebelum bisa bekerja. Itu terdaftar di bawah extension=php_mbstring.dll. Temukan di php.inifile dan hapus tanda titik koma ( ;) di depannya dan simpan file tersebut.

Setelah ini jalankan install composerlagi di direktori root aplikasi Laravel Anda dan harus berfungsi.

Bono
sumber
0

Jika Anda adalah pengguna Windows, Anda dapat menghapus Composer. Kemudian instal Komposer. Setelah itu Anda menginstal Laravel. Mungkin itu akan berhasil.

Sadik Alamin Tushar
sumber
0

masalah saya diselesaikan oleh

composer update
composer install
php artisan key:generate

jika Anda memiliki masalah lain, Anda dapat menghapus cache dan mengkonfigurasi Hapus rute cache:

php artisan route:cache

Bersihkan cache Lihat:

php artisan view:clear

Bersihkan cache Config:

php artisan config:cache
sanjay
sumber
0

Aku punya ini ketika saya melakukan composer updatebukan composer install.

Mick
sumber