简体   繁体   English

无法将 Laravel 5.4 更新到 5.5 composer

[英]Cannot update Laravel 5.4 to 5.5 composer

When I tried to update Laravel 5.5 from 5.4, it is show errors.当我尝试从 5.4 更新 Laravel 5.5 时,显示错误。

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=7.0",
        "intervention/image": "^2.4",
        "laravel/framework": "5.5.*",
        "laravel/tinker": "~1.0"
    },
    "require-dev": {
        "fzaninotto/faker": "~1.4",
        "mockery/mockery": "0.9.*",
        "phpunit/phpunit": "~6.0"
    },
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "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"
        ]
    },
    "config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    }
}

This is my composer.json file.这是我的 composer.json 文件。 When I use command composer update , this is show.当我使用命令composer update 时,这是显示。

Problem 1
        - This package requires php >=7.0 but your PHP version (5.6.25) does not satisfy that requirement.
      Problem 2
        - Installation request for laravel/framework 5.5.* -> satisfiable by laravel/framework[v5.5.0].
        - laravel/framework v5.5.0 requires php >=7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
      Problem 3
        - phpunit/phpunit 6.3.0 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.2.4 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.2.3 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.2.2 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.2.1 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.2.0 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.1.4 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.1.3 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.1.2 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.1.1 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.1.0 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.9 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.8 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.7 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.6 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.5 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.4 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.3 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.2 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.13 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.12 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.11 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.10 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.1 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - phpunit/phpunit 6.0.0 requires php ^7.0 -> your PHP version (5.6.25) does not satisfy that requirement.
        - Installation request for phpunit/phpunit ~6.0 -> satisfiable by phpunit/phpunit[6.0.0, 6.0.1, 6.0.10, 6.0.11, 6.0.12, 6.0.13, 6.0.
    2, 6.0.3, 6.0.4, 6.0.5, 6.0.6, 6.0.7, 6.0.8, 6.0.9, 6.1.0, 6.1.1, 6.1.2, 6.1.3, 6.1.4, 6.2.0, 6.2.1, 6.2.2, 6.2.3, 6.2.4, 6.3.0].

My PHP version is 7.0.10 and I use wamp.我的 PHP 版本是 7.0.10,我使用 wamp。

Your PHP version is 5.6你的 PHP 版本是 5.6

This package requires php >=7.0 but your PHP version (5.6.25) does not satisfy that requirement.

So change your PHP version to PHP 7.0 and run:因此,将您的 PHP 版本更改为 PHP 7.0 并运行:

composer install

i had similar issue in the past.. this happens with wamp.. check your php version using command prompt.. sometimes wamp shows v7 but the project keeps using older version in the background.我过去遇到过类似的问题.. wamp 会发生这种情况.. 使用命令提示符检查您的 php 版本.. 有时 wamp 显示 v7,但该项目在后台继续使用旧版本。 or create a route on laravel to show php version.. it will confirm what the issue is.或者在 laravel 上创建一个路由来显示 php 版本..它会确认问题是什么。

您需要删除composer.lock文件并再次运行composer install

尝试 composer install --ignore-platform-reqs

For updating Laravel 6.x (Which means any subversions to V6) 用于更新Laravel 6.x(这意味着对V6的任何颠覆)
Just run this command 只需运行此命令

cd [laravel installation directory]
composer update

You must have composer installed on your VM or PC. 您必须在VM或PC上安装composer。

For Linux users only: 仅适用于Linux用户:

Composer directory must be owned by current user 作曲家目录必须归当前用户所有

//Check ownership
ls -la ~/ | grep ".composer"

//If you don't own the directory
chown -R [user]/[user] ~/.composer

Message me on any social media @smitpatelx Or leave a comment if you need any help or if your usecase differ from the above. 在任何社交媒体上发邮件给我@smitpatelx,或者如果您需要任何帮助或者您的用例与上述情况不同,请发表评论。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM