我刚刚开始通过遵循一些指南和教程来学习 php/laravel,这使我使用php artisan serve命令运行服务器。
我采取的步骤如下:
$PATH.laravel new new-blogphp 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. 这是如何发生的/如何解决这个问题?
这是因为您缺少“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)
除了忘记将 vendor 文件夹添加到项目目录中之外,您已正确完成所有操作,只需尝试
composer i
Run Code Online (Sandbox Code Playgroud)
在终端的项目目录内,将解决您的错误。如果您遇到任何其他错误,请删除 composer.lock 文件,然后重试。
更新:
当遇到诸如 PHP 版本不匹配或依赖版本锁定等问题时,不要删除 composer.lock 文件,只需使用
composer update
Run Code Online (Sandbox Code Playgroud)
您的项目中没有供应商文件夹,您需要重新安装 laravel 并尝试使用安装它
laravel new project或者composer create-project ---prefer-dist laravel/laravel blog
| 归档时间: |
|
| 查看次数: |
14261 次 |
| 最近记录: |