我有方法addSeconds在docker下不存在错误
我试图在docker下安装我的laravel 5.5/postgres应用程序,但遇到错误:我有方法addSeconds在docker下不存在错误,docker,laravel-5,php-carbon,Docker,Laravel 5,Php Carbon,我试图在docker下安装我的laravel 5.5/postgres应用程序,但遇到错误: Carbon 1 is deprecated, see how to migrate to Carbon 2. https://carbon.nesbot.com/docs/#api-carbon-2 You can run './vendor/bin/upgrade-carbon' to get help in updating carbon and other frameworks and
Carbon 1 is deprecated, see how to migrate to Carbon 2.
https://carbon.nesbot.com/docs/#api-carbon-2
You can run './vendor/bin/upgrade-carbon' to get help in updating carbon and other frameworks and libraries that depend on it.
为了在composer.json文件中修复它,我添加了一行:
"nesbot/carbon": "2 as 1.24.1"
因此composer.json具有:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"php": ">=5.6.4",
"barryvdh/laravel-debugbar": "^2.3",
"graham-campbell/markdown": "^8.0",
"intervention/image": "^2.3",
"khill/lavacharts": "3.0.*",
"laravel/framework": "5.5.*",
"laravel/socialite": "^3.0",
"laravel/tinker": "~1.0",
"laravelcollective/html": "^5.4.0",
"nwidart/laravel-modules": "^2.2",
"doctrine/dbal": "~2.5",
"wboyz/laravel-enum": "^0.2.1",
"nesbot/carbon": "2 as 1.24.1"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~6.0",
"stolz/laravel-html-tidy": "^0.1.1",
"xethron/migrations-generator": "^2.0",
"filp/whoops" : "~2.0"
},
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"Modules\\": "Modules/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
"scripts": {
"post-root-package-install": [
"php -r \"file_exists('.env') || copy('.env.example', '.env');\""
],
"post-create-project-cmd": [
"php artisan key:generate"
],
"post-install-cmd": [
"Illuminate\\Foundation\\ComposerScripts::postInstall",
"php artisan optimize"
],
"post-update-cmd": [
"Illuminate\\Foundation\\ComposerScripts::postUpdate",
"php artisan optimize"
],
"post-autoload-dump": [
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
"@php artisan package:discover"
]
},
"config": {
"preferred-install": "dist",
"sort-packages": true,
"optimize-autoloader": true
}
}
在运行我的应用程序之后,我遇到了错误:
[2019-11-11 08:31:40] local.ERROR: Method addSeconds does not exist. {"exception":"[object] (BadMethodCallException(code: 0): Method addSeconds does not exist. at /var/www/lprods_docker_root/vendor/laravel/framework/src/Illuminate/Support/Traits/Macroable.php:96)
[stacktrace]
#0 /var/www/lprods_docker_root/vendor/laravel/framework/src/Illuminate/Support/InteractsWithTime.php(37): Illuminate\\Support\\Carbon->__call('addSeconds', Array)
我看到addSeconds在vendor/目录下被多次使用
是版本问题吗?如何修复它
# php artisan --version
Laravel Framework 5.5.44
看起来像是一个决定:
"nesbot/carbon": "2 as 1.24.1"
这是无效的。
我使用以下命令安装了composer:
curl -sS https://getcomposer.org/installer | php
php composer.phar
mv composer.phar /usr/local/bin/composer
composer update
然后运行:
./vendor/bin/upgrade-carbon
它工作正常 尝试运行
composer更新