symfony - 锁文件不是最新的composer.json更改

标签 symfony symfony4 symfony-process composer-php

我正在尝试克隆github存储库并在其上发布composer install。但是我得到这个:

Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.


Your requirements could not be resolved to an installable set of packages.  
  Problem 1  
    - Conclusion: remove symfony/polyfill-intl-icu v1.9.0  
    - Installation request for symfony/polyfill-intl-icu v1.9.0 -> satisfiable by symfony/polyfill-intl-icu[v1.9.0].  
    - Conclusion: remove symfony/process v3.4.15  
    - symfony/polyfill-intl-icu v1.9.0 requires symfony/intl ~2.3|~3.0|~4.0 -> satisfiable by symfony/symfony[v4.0.0].  
    - don't install symfony/process v3.4.15|remove symfony/symfony v4.0.0  
    - don't install symfony/symfony v4.0.0|don't install symfony/process v3.4.15  
    - Installation request for symfony/process v3.4.15 -> satisfiable by symfony/process[v3.4.15].  

运行composer update
Problem 1
- Conclusion: don't install symfony/symfony v4.1.7
- Conclusion: don't install symfony/symfony v4.1.6
- Conclusion: don't install symfony/symfony v4.1.5
- Conclusion: don't install symfony/symfony v4.1.4
- Conclusion: don't install symfony/symfony v4.1.3
- Conclusion: don't install symfony/symfony v4.1.2
- Conclusion: don't install symfony/symfony v4.1.1
- Conclusion: don't install symfony/symfony v4.1.0
- Conclusion: don't install symfony/symfony v4.0.14
- Conclusion: don't install symfony/symfony v4.0.13
- Conclusion: don't install symfony/symfony v4.0.12
- Conclusion: don't install symfony/symfony v4.0.11
- Conclusion: don't install symfony/symfony v4.0.10
- Conclusion: don't install symfony/symfony v4.0.9
- Conclusion: don't install symfony/symfony v4.0.8
- Conclusion: don't install symfony/symfony v4.0.7
- Conclusion: don't install symfony/symfony v4.0.6
- Conclusion: don't install symfony/symfony v4.0.5
- Conclusion: don't install symfony/symfony v4.0.4
- Conclusion: don't install symfony/symfony v4.0.3
- Conclusion: don't install symfony/symfony v4.0.2
- Conclusion: don't install symfony/symfony v4.0.1
- Conclusion: remove symfony/symfony v4.0.0
- don't install symfony/symfony v4.0.0|remove symfony/process v3.4.15
- don't install symfony/process v3.3.0|don't install symfony/symfony v4.0.0

composer.json (需要部分)
"require": {
    "php": ">=7.1",
    "symfony/symfony": "~4.0",
    "symfony/process": "^3.3",
    "doctrine/orm": "dev-fork as 2.5.6",
    "doctrine/doctrine-bundle": "1.*",
    "symfony/swiftmailer-bundle": "~3.1",
    "symfony/monolog-bundle": "~3.1",
    "sensio/framework-extra-bundle": "^5.1",
    "graylog2/gelf-php": "^1.4",
    "doctrine/doctrine-migrations-bundle": "^1.1",
    "awt/webauth-bundle": "3.0.*",
    "awt/canvas-client-bundle": "6.2.*"
}

最佳答案

您可以在 Composer 上使用dependsprohibits来查看应该执行的操作:

composer depends symfony/process 3.4.15


composer prohibits symfony/symfony 4

这两个命令告诉您什么是冲突以及您应该做什么。

主要问题是您的composer.jsoncomposer.lock不同步。第一个文件告诉作曲者所需的软件包及其版本限制,而第二个文件则在协作者之间共享完全相同的软件包版本,以确保一致性。

如果存储库所有者不能帮助您解决此问题,则唯一的方法是:
rm composer.lock
rm -rf vendor
composer install

仅根据composer.json,这将删除供应商目录的内容并安装所有依赖项的fressh副本

关于symfony - 锁文件不是最新的composer.json更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53291681/

相关文章:

Symfony 4:Dotenv::populate 不返回任何内容

php - 从 symfony/console 启动后台 symfony/进程

symfony - Doctrine2 忽略数据库表

php - Symfony2 在测试中访问私有(private)服务

php - Symfony 使用 javascript 国际化

php - 交响乐 4 : how to allow dynamic values for array nodes in bundle configuration?

php - 如何在我的扩展 Twig 页面 (Symfony) 上使用变量?

php - 替换/装饰 `translation.reader`

bash - 当在 Behat 上下文中作为 Symfony Process 运行时,使用 Expect 生成交互式 CLI 命令会提前以 0 退出

php - Symfony2 - 进程启动 symfony2 命令