【问题标题】:Cannot upgrade Carbon 1 to Carbon 2无法将碳 1 升级到碳 2
【发布时间】:2019-12-15 22:19:35
【问题描述】:

我一直在做一个 Laravel 项目。当我运行 composer 命令时,我总是收到警告,

不推荐使用 Carbon 1,请参阅如何迁移到 Carbon 2。 https://carbon.nesbot.com/docs/#api-carbon-2 您可以运行 './vendor/bin/upgrade-carbon' 来获得帮助来更新 carbon 和其他依赖它的框架和库。

然后我运行 ./vendor/bin/upgrade-carbon 但出现错误,

未捕获的错误:在 .../vendor/nesbot/carbon/src/Carbon/Upgrade.php:131 中找不到类“Composer\Composer”

我也尝试过寻找解决方案,但找不到。 我真的需要帮助来继续我的项目。非常感谢。

【问题讨论】:

    标签: laravel-5 php-carbon


    【解决方案1】:

    将以下依赖项添加到您的 composer.json**:

    {
      ...
      "require": {
        ...
        "kylekatarnls/laravel-carbon-2": "^1.0.0",
        "nesbot/carbon": "2.0.0-beta.2 as 1.25.0"
      }
      ...
    }
    

    然后运行:

    composer update
    

    【讨论】:

    • 这反映了> Illuminate\Foundation\ComposerScripts::postAutoloadDump PHP Fatal error: Cannot declare class Illuminate\Support\Carbon, because the name is already in use in /opt/lampp/htdocs/project_name/vendor/kylekatarnls/laravel-carbon-2/src/Carbon.php on line 9 我该怎么办?
    • "nesbot/carbon": "2.0.0 as 1.25.0" 就够了
    【解决方案2】:

    似乎作曲家不是最新的。先尝试运行composer self-update,然后重试./vendor/bin/upgrade-carbon

    无论如何,这是一个弃用通知,并不意味着您不能继续您的项目。它只是告诉你这个特定的包将不再收到任何更新,而且就 Carbon 而言,你将缺少在当前文档中找到的许多功能。

    你说你在一个 Laravel 项目中,所以你可能没有自己安装 carbon。那么首先要考虑的是升级到 Laravel 5.8(默认使用 Carbon 2)并且是 Laravel 仍然支持的唯一版本。

    【讨论】:

      猜你喜欢
      • 2014-02-17
      • 1970-01-01
      • 2016-07-25
      • 1970-01-01
      • 1970-01-01
      • 2019-03-02
      • 1970-01-01
      • 2014-02-06
      • 2016-12-13
      相关资源
      最近更新 更多