【问题标题】:No lock file found. Updating dependencies instead of installing from lock file未找到锁定文件。更新依赖项而不是从锁定文件安装
【发布时间】:2021-05-01 22:33:38
【问题描述】:

当我用 composer 初始化一个新项目时,我在终端出现这个错误:

未找到锁定文件。更新依赖项而不是从安装 锁定文件。如果您不这样做,请使用 composer update 而不是 composer install 有一个锁定文件。

谁能给我解释一下?

【问题讨论】:

标签: composer-php


【解决方案1】:

composer updatecomposer install 的相似之处在于它们都下载您的依赖项,但在一个重要方面有所不同。

更新命令将在composer.json 文件中检索满足版本约束的所有依赖项的最新版本。接下来,它必须发现要安装依赖项的确切版本、依赖项的依赖项、它们的依赖项等等,一直到底部。如果它找不到满足所有约束的一组版本,则命令退出并显示错误,解释它无法解决的问题以及原因。如果可以解决所有依赖项,它们将被下载到vendor 目录中。最后,将生成一个 composer.lock 文件,其中包含已安装的确切版本和提交。

如果存在锁定文件并且您运行composer install,则composer 不必执行依赖关系解析,因为它们已经被解析。它从锁定文件中下载每个包的确切版本。

您收到的消息是您的依赖项尚未解决(通过 update 命令),但如果没有 composer.lock 文件,运行 install 将起到更新的作用。

【讨论】:

    猜你喜欢
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2014-04-04
    • 2021-03-29
    • 1970-01-01
    • 2021-10-08
    • 1970-01-01
    相关资源
    最近更新 更多