如何解决“您的需求无法解析为一组可安装的软件包”

Posted

技术标签:

【中文标题】如何解决“您的需求无法解析为一组可安装的软件包”【英文标题】:How to solve "Your Requirements could not be resolved to an installable set of packages" 【发布时间】:2021-06-05 12:10:45 【问题描述】:

我正在尝试使用 composer 创建一个新的 Laravel 项目,但我不断收到此错误消息。有谁知道我做错了什么或如何解决这个问题?

您的需求无法解决为一组可安装的软件包。

问题 1

  - laravel/framework[v8.40.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.40 -> satisfiable by laravel/framework[v8.40.0, ..., 8.x-dev].

要启用扩展,请确认它们已在您的 .ini 文件中启用:

- C:\MAMP\bin\php\php7.4.1\php.ini

您也可以在终端内运行php --ini 来查看PHP 在CLI 模式下使用了哪些文件。

Command Prompt screenshot of the project creation

【问题讨论】:

这是答案,-root composer.json 需要 laravel/framework ^8.40 -> laravel/framework[v8.40.0, ..., 8.x-dev] 可以满足你需要检查基础 composer.json 文件来检查你的包是否使用了旧的依赖项。 【参考方案1】:

您需要从源文件夹中取消注释 php.ini 文件中的扩展名“extension = fileinfo”。然后删除 projectx 目录。最后,按照你的截图重新运行 laravel new projectx。

如果您已经在 php.ini 中取消注释“extension = fileinfo”并且它不起作用。您可能需要授予管理员权限才能执行更改:

要授予这些权限,您必须执行以下操作:注意:这适用于 Windows 10。

    它位于授予权限“c:/xampp/php/php.ini”的文件中。对于你的情况 - C:\MAMP\bin\php\php7.4.1\php.ini 右键单击文件并单击属性。 安全性。 点击编辑按钮。 点击每个组或用户名,并在底部显示经过身份验证的用户的权限,然后检查完​​全控制。

以这种方式授予权限,现在如果保存对文件的更改。

【讨论】:

取消注释 php.ini 中的扩展名“extension = fileinfo”对我有用。

以上是关于如何解决“您的需求无法解析为一组可安装的软件包”的主要内容,如果未能解决你的问题,请参考以下文章

Composer Laravel 安装错误:您的需求无法解析为一组可安装的软件包

composer requireIllumination/support 会给出一个错误,例如“您的需求无法解析为一组可安装的软件包”。

无法通过作曲家安装 laravel 安装程序

如何通过流明中的作曲家安装照明/邮件

在 forge 上安装 Laravel 5.2 时出错

安装 symfony2 cmf composer 问题