如何解释Composer的错误日志?

2024-04-12

我在网上做了很多研究,但没有找到 Composer 错误日志的文档。在我发现的讨论中,没有人给出与错误日志一致的解释。例如:

  • [支持] 需要对“结论:不要安装...”进行解释 https://github.com/composer/composer/issues/2702
  • 为什么作曲家在(看似)不存在任何障碍时说“结论:不要安装”? https://stackoverflow.com/q/45009772

我知道 Composer 做什么并且可以自己解决问题,但我经常必须为此咨询 packagist.org。尽管作曲家日志非常(而且不必要)冗长,但它只给了我一些提示。它并没有真正指出具体问题。

有谁知道完整的文档或如何解释日志背后的推理,也许以上面的为例?


Composer 的文档可以在以下位置找到:getcomposer.org/doc https://getcomposer.org/doc/, 尤其故障排除 https://getcomposer.org/doc/articles/troubleshooting.md部分。通常,依赖性问题来自于您的错误配置composer.json理解 Composer 日志需要经验或在反复试验中学习。记录数百个错误中的每一个可能很快就会过时。如果您认为某些具体错误不够清楚,您可以随时提出新建议 https://github.com/composer/composer/issues at the Composer 的 GitHub 页面 https://github.com/composer/composer.

正如链接中所建议的GitHub问题 https://github.com/composer/composer/issues/2702,“结论:不要安装”消息可能与中定义的要求有关minimum-stability https://getcomposer.org/doc/04-schema.md#minimum-stability。其他链接问题 https://stackoverflow.com/q/45009772/55075可能与 Composer 的错误有关,如报告所述GH-7215 https://github.com/composer/composer/issues/7215.

Errors

这是一个解释常见 Composer 错误的小指南:

  • 只能安装一个来源:org/package[x.y.z, X.Y.Z]。

    如果您看到此消息,则可能是依赖性问题的主要原因。这基本上意味着,根据 Composer 的依赖性计算,这两个版本都是必需的,但只能安装一个主要版本(您不能同时拥有 x.y.z 和 X.Y.Z,除非您将配置拆分为不同的文件夹)。查看why需要这些包,请使用composer why/depends命令并相应地调整依赖项。

    See: 如何解决“只能安装其中之一:”冲突? https://stackoverflow.com/q/36611550/55075 & 运行composer install时如何解决两个包需求冲突? https://stackoverflow.com/q/21052831/55075

  • org/package2 的安装请求(锁定于 vX.Y.Z)

    此消息意味着存在 org/package 的安装请求,但是它被锁定在 X.Y.Z。如果请求的版本与锁定版本不兼容(例如不同的主要版本),则无法同时安装两者。此消息通常与已经提到的“只能安装一个”消息一起出现。因此,每当您看到“locked at”时,这意味着 Composer 从composer.lock文件。要排除故障,您可以使用composer why/depends命令查找请求包的原因并调整兼容性,否则,您可以尝试删除composer.lock文件并从头开始(最好从空文件夹开始)。

    See: laravel/lumen-installer 安装失败:guzzlehttp/guzzle 锁定在 6.3.0 https://stackoverflow.com/q/48427886/55075

  • org/package1 vx.y.z冲突与 org/package2[vX.Y.Z]。

    这与上面的问题类似,两个包存在冲突,您需要手动解决依赖关系。阅读消息的整个上下文可能会给您提供更多线索。检查依赖树也可能有帮助(composer show -t).

  • 与您的要求相冲突或minimum-stability

    此消息的含义如其所读,因此您应该检查所需的版本和/或您的minimum-stability设置。

这可能是由于软件包被标记为不稳定而您的要求是“仅稳定”造成的。请参阅:但这些与您的要求或最低稳定性相冲突 https://stackoverflow.com/q/40453388/55075

或者因为与其他已安装的软件包发生冲突。看:如何确定是什么阻止了 Composer 安装最新版本的软件包? https://stackoverflow.com/q/45386572/1426539.

其他错误请查看官方Composer 的故障排除页面 https://getcomposer.org/doc/articles/troubleshooting.md.

故障排除

以下是如何解决一般 Composer 依赖问题的更多建议:

  • Add -v/-vv/-vvv命令的参数以获得更详细的输出。
  • Run composer diagnose检查常见错误以帮助调试问题。
  • 如果您看到“locked at x.y.z”消息,则它与锁定在您的包中的包有关。composer.lock.
  • 测试你的composer.json在空文件夹上。
  • 保持你的composer.json到最低限度。
  • Run composer show -t查看当前的依赖关系树。
  • Run composer show -a org/package x.y.z查看有关包裹的详细信息。
  • 请随时在以下位置提出新问题:堆栈溢出.

要完全调试 Composer 的依赖问题,您可以:

  • 分析或修改源代码(例如DependencyResolver/Problem.php https://github.com/composer/composer/blob/master/src/Composer/DependencyResolver/Problem.php).
  • 在下面运行 ComposerXDebug https://xdebug.org/,通过断点或生成完整或部分跟踪文件。

解释常见错误的有用线程:

  • 如何解决“只能安装其中之一:”冲突? https://stackoverflow.com/q/36611550/55075
  • composer.json 无法解析可安装的包集 https://stackoverflow.com/q/16672993/55075
  • 当依赖项被锁定时发现 Composer 软件包的最新版本 https://stackoverflow.com/q/30277015/55075
  • 当尝试安装 php-jwt 时遇到 auth0 问题 https://stackoverflow.com/q/42532831/55075
  • 参考 - 升级 PHP 后 Composer 错误“您的 PHP 版本不满足要求” https://stackoverflow.com/q/66368196/
  • 如何确定是什么阻止了 Composer 安装最新版本的软件包? https://stackoverflow.com/q/45386572/1426539
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何解释Composer的错误日志? 的相关文章

  • 通过API更新Twitter背景

    我在通过 Twitter 的 API 更新背景时遇到了一些问题 target url http www google com logos 11th birthday gif ch curl init curl setopt ch CURLO
  • PHP if in_array 表示多个值

    我有一个由 3 到 12 个值之间的任意位置生成的数组 它根据帐户信息生成该数组 result ad gt user gt groups user username 我想检查这个数组是否有多个值 大约 4 或 5 个 如果其中有任何一个值
  • Magento Connect Manager 和 ftp 写入文件权限

    将我的网站从开发域转移到实时域后 我尝试使用 magento 连接管理器安装扩展 但是我不断收到 CONNECT ERROR Please check for sufficient ftp write file permissions Yo
  • 命令运行时从 shell_exec 命令获取输出

    我正在编写一个 PHP 脚本网页 该网页旨在接受先前上传到服务器的 JFFS2 图像的文件名 然后 该脚本将使用映像重新刷新服务器上的分区 并输出结果 我一直在用这个 tmp shell exec update flash v filena
  • 如何在 Yii 中设置 returnUrl 值

    我正在使用 Yii 我遇到的问题是Yii app gt user gt returnUrl 它总是让我回到index php page 由于我不知道用户从哪个页面访问了当前页面 如何将其值设置为请求当前页面的页面 您可以使用Yii app
  • 用于添加和删除客户名称的 Web 表单出现问题

    我正在尝试创建一个 Web 表单 其中列出了所有客户 然后为您提供一个文本字段 旁边有一个按钮 您可以在其中添加客户 然后它应该显示客户列表 旁边有删除按钮 您可以单击该按钮从数据库中删除客户 我正在让它发挥作用 对于初学者来说 它会回显
  • 如何限制 JSON 访问?

    我有一个 Web 应用程序 可以从新创建的 JSON API 中提取数据 我的静态 HTML 页面通过 JavaScript 从静态 HTML 页面动态调用 JSON API 如何限制对 JSON API 的访问 以便只有我 我的网站 可以
  • 数组和关联数组合并

    如何实现第三个数组 合并Array1和Array2 在 PHP 中做到这一点的最佳方法是什么 非常感谢 Array2 具有类似索引 键 即 Array1 中 id 的关联值 Array1 Array 0 gt Array id gt 56
  • PHP 计数器在 while 循环中递增

    我在一个 while 循环中增加计数器时遇到问题 基本上我只想在数据库中获取的两个图像链接之间交替 但我的计数器不会增加 我不确定为什么有人可以提供帮助 while row stmt gt fetch PDO FETCH ASSOC img
  • PHP date_sun_info 错误时间

    我正在尝试使用 PHPdate sun info函数获取全天太阳某些位置的时间信息 目前我正在使用类似于中的代码文档 http php net manual en function date sun info php sun info da
  • PHP mail() 函数发送电子邮件,但需要 10 多分钟才能显示

    因此 我的用户从手机上的 Android 应用程序进行注册 注册成功后 我会触发一封邮件发送到注册的电子邮件地址 其中包含来自我的 PHP 脚本的激活密码 这是我使用的代码行 非常简单 mail to subject message hea
  • 一个表单包含两个提交按钮,每个按钮都有不同的操作

    我花了几个小时试图找到问题的解决方案 但似乎找不到正确的解决方案 提前感谢你的帮助 我有一个 html 表单
  • 如何从 jquery .load 获取 php 响应

    例如我给出另一个代码 这是我的 some3 php 代码 第一个文件
  • Symfony 5.4 Security Bundle,注册后无法登录

    我在 5 4 版本上构建空的新项目 我使用这些命令来构建项目 composer create project symfony skeleton 5 4 testapp54 cd testapp54 composer require weba
  • 正则表达式:如何表达没有下划线的 \w

    有没有简洁的表达方式 w but without 即 w 中包含的所有字符 除了 我问这个是因为我正在寻找最简洁的方式来表达域名验证 域名可以包含小写和大写字母 数字 句号和破折号 但不能包含下划线 w 包括以上所有内容 加上下划线 那么
  • 为什么 strtotime('a') 返回时间?

    我正在 PHP 5 3 中循环遍历 CSV 文件并检查日期 我一直在使用 strtotime 它运行良好 除了我有一个包含 1 或 2 个字符代码的字段 任何单个字符代码上的 strtotime 似乎都像我要求 now 一样 但如果代码是
  • Laravel 更新雄辩事件:获取数据

    我一直在读有关雄辩事件的文章 与模型的每次交互都有一个事件 创建 创建 更新 更新 保存 保存 删除 删除 恢复 恢复 我想知道模型更新后的数据以及之前的数据 是否可以 因为文档没有太多关于如何使用这些事件的信息 您正在寻找getDirty
  • Woocommerce 中的 Ajaxify 标头购物车项目计数

    我正在为 WordPress 创建一个自定义 woocommerce 集成主题 我在顶部有一个 blob 显示购物车中的商品总数 我想使用 Jquery 更新此 blob 无需重新加载页面 我能够通过获取购物车中的当前数量来增加商品数量bl
  • 测验程序的 MySql 数据库设计

    我目前正在开发一个项目 主要是创建一个测验应用程序 它将能够进行包含 10 到 20 个问题的多项选择题或简答题的测验 它需要能够根据正确答案检查用户的答案 然后对用户的答案进行评分 稍后 我可能会实现一个后端功能来在线创建测验 但现在我将
  • 无法下载 Windows 版 Composer SSL:握手超时

    这是我尝试安装 Windows 版 Composer 时得到的结果 The https getcomposer org versions https getcomposer org versions 无法下载文件 SSL 握手超时 无法启用

随机推荐

  • 如何在 Asp.net C# 中使用 LDAP 在 Active Directory 中搜索用户

    如何在 asp net c 中从 Active Directory 服务器获取所有记录 在中创建连接字符串LDAP提供username and Password可以与服务器通信并具有管理员权限 假设直流电是me com and userna
  • 当c#程序崩溃时如何知道原因?

    我的程序经常因某种原因崩溃 在这种情况下 我确实看到带有 关闭 按钮的 Windows 消息 每次发生这样的事情我都非常想知道到底发生了什么 感谢社区 我已经知道如何 处理 某些情况 我在程序的开头添加了这样的代码 static void
  • 在简单的 CSS 工具提示上淡入和淡出

    新手问题 尝试制作一个简单的 css 工具提示来淡入和淡出 但无法使其工作 搜索了很多但找不到简单的答案 我假设我把过渡 css3 放在错误的地方 但它在其他地方也不起作用
  • 具有动态名称的 Django 模型字段

    我想通过一种常见的 mixin 或抽象模型向现有模型添加新的 CharFields 但这些字段的名称取决于配置 因此 一个模型将具有 someprefix1 title 字段 而另一个模型将具有 someprefix2 title 字段 是
  • 检查 Spark 中矩阵每列中唯一值的数量

    我有一个 csv 文件当前存储为 Spark 中的数据框 scala gt df res11 org apache spark sql DataFrame 2013 03 25 12 49 36 000 string OES PSI603
  • iOS 8 - 切换控件后,即使在纵向模式下,旋转也会使状态栏消失

    我在 iOS 8 中新的状态栏自动隐藏功能中遇到了很多麻烦 在我的应用程序中 我有一个视图 当用户点击一次时 导航栏和状态栏就会消失 在横向时 状态栏会自行隐藏 这对我来说很好 我只需要在纵向模式下使用它 但问题是 当设备处于横向状态并显示
  • 当 Gmail 以编程方式用作 POP3 服务器时,它会表现出哪些非标准行为特征?

    我正在尝试准备一份完整的 Gmail POP3 行为列表 您通常不会期望在 POP3 服务器中找到这些行为 例如 Gmail 似乎会忽略来自 POP3 客户端的 DELE 删除 命令 相反 它实施自己的删除和归档策略 准备列表的目的是避免开
  • 在 C 中将二叉树转换为数组(并随后保存)

    所以 我正在做这个客户应用程序 您可以在其中创建 修改 搜索 列出客户 后来 这扩展到通过订单等方式将客户与产品联系起来 但我现在的重点只是客户 我已经创建了一个二叉树 所有这些功能都可以工作 但是我需要一种方法来存储创建的客户以供下次使用
  • 使用 Apache POI 更新 excel 文件

    我正在尝试使用 Apache POI 更新现有的 Excel 文件 每次运行代码时 我都会收到如下所示的错误 我也尝试过 FileInputStreamNewFile 的东西 Exception in thread main java la
  • strdup() 函数

    我最近意识到strdup 我在 OS X 上经常使用的函数不是 ANSI C 的一部分 而是 POSIX 的一部分 我不想重写所有代码 所以我想我会编写自己的代码strdup 功能 其实这并不难 只是一个malloc and a strcp
  • 如何在 iTunes connect 中本地化阿拉伯语应用程序?

    我正在尝试为我的应用程序使用阿拉伯语描述和元数据 在 iTunes connect 中 它规定这些数据必须是英语或任何其他语言 所以我确实将它们设置为英语 我的应用程序 故事板和内容 的开发是用阿拉伯语进行的 所以当我去 iTunes 连接
  • Spring ModelMapper 错误:控制器的映射已存在

    我通过 DTO 从表单获取数据并将其映射到我的 Hibernate 实体 我想跳过日期字段 因为传入的数据都是字符串 我需要将字符串字段与其他字段分开转换为日期 其余字段将直接从传入的 DTO 映射 该过程对于第一个请求运行良好 但在后续请
  • 如何使用CURL/CygWin将文件从本地Windows机器发送到服务器?

    我的目标是使用 cygwin curl 将 CouchDB 文档从我的 Windows 计算机上传到远程服务器 以下教程展示了如何在 Mac 上执行相同操作 http net tutsplus com tutorials getting s
  • Google Play 上的应用程序始终显示“更新”而不是打开 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我在 Google Play 上有一个应用程序 更新后始终显示更新按钮 即使它已经更新并且最新版本显示在应用程序设置中 Googl
  • 我应该在 switch 语句中使用 continue 吗?

    我注意到你确实可以使用continueswitch 语句中的关键字 但在 PHP 上它没有达到我的预期 如果 PHP 失败了 谁知道还有多少其他语言也会失败呢 如果我经常在语言之间切换 如果代码的行为与我期望的行为不同 这可能会成为问题 我
  • 将每个单词用 span 包裹在 contenteditable div 中

    I have contenteditable div 每次 div 的内容发生变化时 函数都会用它来包装每个单词span 对于 CSS 被调用 我有两个问题 设置后innerHTML 光标出现在div的开头 我希望光标停留在同一位置 换行符
  • 从 javascript 函数打开下拉列表[重复]

    这个问题在这里已经有答案了 我试图在调用 javascript 函数时显示下拉选项 但最终我没有成功 需要帮忙 这是我的代码
  • 如果是 Edge 浏览器,则将自定义参数传递给 window.open

    从父窗口说 A 尝试使用 window open 打开另一个窗口 ChildWindow htm 我无法从 A 传递字符串值 var dialog window open Child Window htm title width 550px
  • 如何使用 Visual Studio 的 Node Tools 调试 Gulp 任务?

    我最近安装了适用于 Visual Studio 的 NodeJS 工具 https github com Microsoft nodejstools其中宣称支持 VS 中的 Node 环境 值得注意的是 它能够从 IDE 设置调试断点 我不
  • 如何解释Composer的错误日志?

    我在网上做了很多研究 但没有找到 Composer 错误日志的文档 在我发现的讨论中 没有人给出与错误日志一致的解释 例如 支持 需要对 结论 不要安装 进行解释 https github com composer composer iss