php artisan:“无法打开流:没有这样的文件或目录”

Sil*_*ash 1 php laravel

我刚刚开始通过遵循一些指南和教程来学习 php/laravel,这使我使用php artisan serve命令运行服务器。

我采取的步骤如下:

  1. 使用 composer 安装 laravel 并将其添加到$PATH.
  2. 使用创建项目 laravel new new-blog
  3. 将目录更改为项目文件夹并运行php artisan serve命令。

但是,不是带有地址的 php 服务器的预期输出,而是出现此错误:

PHP Warning:  require(/home/sflash/Documents/php/laravel/new-blog/vendor/autoload.php): failed to open stream: No such file or directory in /home/sflash/Documents/php/laravel/new-blog/artisan on line 18
PHP Fatal error:  require(): Failed opening required '/home/sflash/Documents/php/laravel/new-blog/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/sflash/Documents/php/laravel/new-blog/artisan on line 18
Run Code Online (Sandbox Code Playgroud)

我在一台 linux 机器上(debian buster)。我的项目文件夹的结构如下:

app        composer.json  package.json  README.md  server.php  webpack.mix.js
artisan    config         phpunit.xml   resources  storage
bootstrap  database       public        routes     tests
Run Code Online (Sandbox Code Playgroud)

正如上面的错误代码所述,我没有名为vendor/autoload.php. 这是如何发生的/如何解决这个问题?

Bra*_*and 6

这是因为您缺少“Vendor”目录,从而导致缺少依赖项错误。要解决此问题,您需要运行:

Composer update
Run Code Online (Sandbox Code Playgroud)

在大多数情况下,更新 Composer 将重新生成供应商文件夹和 autoload.php 文件。

或者,您可以使用以下命令重新生成 autoload.php 文件,

composer dump-autoload
Run Code Online (Sandbox Code Playgroud)

如果发现 Composer 已损坏,请卸载现有的 Composer 并重新安装。要安装 Composer,请在根项目文件夹中运行以下命令:

Composer install
Run Code Online (Sandbox Code Playgroud)


Mud*_*lia 5

除了忘记将 vendor 文件夹添加到项目目录中之外,您已正确完成所有操作,只需尝试

 composer i 
Run Code Online (Sandbox Code Playgroud)

在终端的项目目录内,将解决您的错误。如果您遇到任何其他错误,请删除 composer.lock 文件,然后重试。

更新:

当遇到诸如 PHP 版本不匹配或依赖版本锁定等问题时,不要删除 composer.lock 文件,只需使用

composer update
Run Code Online (Sandbox Code Playgroud)


Ous*_*ari 1

您的项目中没有供应商文件夹,您需要重新安装 laravel 并尝试使用安装它

laravel new project或者composer create-project ---prefer-dist laravel/laravel blog