Laravel 8 - Windows - 包发现 post-autoload-dump 事件返回错误代码 255
Laravel 8 - Windows - package discover post-autoload-dump event returned with error code 255
我刚刚使用以下命令在 windows 中创建了一个 Laravel 项目:
composer create-project --prefer-dist laravel/laravel test-windows "8.*"
但是我在安装依赖项的过程中遇到了一些关于缺少需求的错误:
Problem 1
- laravel/framework[v8.65.0, ..., 8.x-dev] require league/flysystem ^1.1 -> satisfiable by league/flysystem[1.1.0, ..., 1.x-dev].
- league/flysystem[1.1.0, ..., 1.x-dev] require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
- Root composer.json requires laravel/framework ^8.65 -> satisfiable by laravel/framework[v8.65.0, ..., 8.x-dev].
To enable extensions, verify that they are enabled in your .ini files:
- C:\Program Files\PHP\v7.4\php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
所以我试过了:
composer install --ignore-platform-reqs
所以现在所有依赖项都已成功安装,但最后我遇到了另一个问题:
82 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
Illuminate\Foundation\ComposerScripts::postAutoloadDump
@php artisan package:discover --ansi
Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 255
现在我无法启动项目或做任何其他事情。我卡住了,我发现了很多 Laravel 6 或 7 的东西,但我目前正在使用 Laravel 8.
谁能帮帮我?
我的环境:
- OS: Windows 10
- 作曲者:版本
2.0.8
- PHP: 版本
7.4.1
- Laravel(在 composer.json 中):版本
^8.65
编辑:@apokryfos 建议我在 php.ini 中安装 ext-fileinfo。所以我试图找到一种方法来做到这一点,但是当我试图编辑 php.ini 文件并保存它时,我得到了 Windows 的错误“你没有权限做这个”。我将尝试重新安装 PHP,因为我有 PHP v7.4,它通常默认从 PHP 5.3.0 开始安装。所以我认为我的 PHP 在我的计算机本地有问题。
编辑 2:我尝试重新安装 PHP v7.4,但它没有任何改变。
我找到了如何以管理员身份在我的 Windows 中编辑我的 php.ini
,following this link :
- 按 Windows 徽标(左下角)
- 在搜索字段中输入记事本
- 在记事本上单击右键并select 运行 成为管理员
- 在记事本中,单击“文件”>“打开并粘贴”
C:\Program Files\PHP\v7.4\php.ini
- 我添加了行
extension=php_fileinfo.dll
- 保存
现在,一切正常,我可以使用 composer install
我刚刚使用以下命令在 windows 中创建了一个 Laravel 项目:
composer create-project --prefer-dist laravel/laravel test-windows "8.*"
但是我在安装依赖项的过程中遇到了一些关于缺少需求的错误:
Problem 1
- laravel/framework[v8.65.0, ..., 8.x-dev] require league/flysystem ^1.1 -> satisfiable by league/flysystem[1.1.0, ..., 1.x-dev].
- league/flysystem[1.1.0, ..., 1.x-dev] require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
- Root composer.json requires laravel/framework ^8.65 -> satisfiable by laravel/framework[v8.65.0, ..., 8.x-dev].
To enable extensions, verify that they are enabled in your .ini files:
- C:\Program Files\PHP\v7.4\php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
所以我试过了:
composer install --ignore-platform-reqs
所以现在所有依赖项都已成功安装,但最后我遇到了另一个问题:
82 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
Illuminate\Foundation\ComposerScripts::postAutoloadDump
@php artisan package:discover --ansi
Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 255
现在我无法启动项目或做任何其他事情。我卡住了,我发现了很多 Laravel 6 或 7 的东西,但我目前正在使用 Laravel 8.
谁能帮帮我?
我的环境:
- OS: Windows 10
- 作曲者:版本
2.0.8
- PHP: 版本
7.4.1
- Laravel(在 composer.json 中):版本
^8.65
编辑:@apokryfos 建议我在 php.ini 中安装 ext-fileinfo。所以我试图找到一种方法来做到这一点,但是当我试图编辑 php.ini 文件并保存它时,我得到了 Windows 的错误“你没有权限做这个”。我将尝试重新安装 PHP,因为我有 PHP v7.4,它通常默认从 PHP 5.3.0 开始安装。所以我认为我的 PHP 在我的计算机本地有问题。
编辑 2:我尝试重新安装 PHP v7.4,但它没有任何改变。
我找到了如何以管理员身份在我的 Windows 中编辑我的 php.ini
,following this link :
- 按 Windows 徽标(左下角)
- 在搜索字段中输入记事本
- 在记事本上单击右键并select 运行 成为管理员
- 在记事本中,单击“文件”>“打开并粘贴”
C:\Program Files\PHP\v7.4\php.ini
- 我添加了行
extension=php_fileinfo.dll
- 保存
现在,一切正常,我可以使用 composer install