Composer - установка освещения/редис завершается неудачно из-за разных версий освещения/поддержки

Я создал новую установку Lumen для нового проекта и пытаюсь настроить Redis в качестве драйвера кэша/сеанса. Через композитор я смог установить Predis без проблем, а затем при попытке запустить:

composer require illuminate/redis

Я получаю эту ошибку, которая говорит мне, что Composer сбит с толку, поскольку разные библиотеки запрашивают разные версии illuminate/support, как я понял из этот вопрос:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Can only install one of: illuminate/support[v5.2.0, v5.1.25].
    - Can only install one of: illuminate/support[v5.2.0, v5.1.25].
    - Can only install one of: illuminate/support[v5.2.0, v5.1.25].
    - illuminate/redis v5.2.0 requires illuminate/support 5.2.* -> satisfiable by illuminate/support[v5.2.0].
    - Installation request for illuminate/redis ^5.2 -> satisfiable by illuminate/redis[v5.2.0].
    - Installation request for illuminate/support == 5.1.25.0 -> satisfiable by illuminate/support[v5.1.25].


Installation failed, reverting ./composer.json to its original content.

Ниже мой composer.json, который довольно прост:

{
    "name": "laravel/lumen",
    "description": "The Laravel Lumen Framework.",
    "keywords": ["framework", "laravel", "lumen"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.5.9",
        "laravel/lumen-framework": "5.1.*",
        "vlucas/phpdotenv": "~1.0",
        "predis/predis": "^1.0"
    },
    "require-dev": {
        "phpunit/phpunit": "~4.0",
        "fzaninotto/faker": "~1.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        },
        "classmap": [
            "database/"
        ]
    },
    "autoload-dev": {
        "classmap": [
            "tests/"
        ]
    },
    "config": {
        "preferred-install": "dist"
    }
}

У меня вопрос, что я делаю не так? , вопрос, указанный выше, предлагает ручные изменения для решения этой проблемы. но я считаю, что установка настолько проста, что я должен делать что-то не так.


person Rabea    schedule 23.12.2015    source источник


Ответы (1)


Мне пришлось отредактировать файл composer.json нужной версией illuminate/redis; заставляя его использовать ту же версию, как показано ниже:

{
    "name": "laravel/lumen",
    "description": "The Laravel Lumen Framework.",
    "keywords": ["framework", "laravel", "lumen"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.5.9",
        "laravel/lumen-framework": "5.1.*",
        "vlucas/phpdotenv": "~1.0",
        "predis/predis": "^1.0",
        "illuminate/redis" : "5.1.*"
    },
    "require-dev": {
        "phpunit/phpunit": "~4.0",
        "fzaninotto/faker": "~1.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        },
        "classmap": [
            "database/"
        ]
    },
    "autoload-dev": {
        "classmap": [
            "tests/"
        ]
    },
    "config": {
        "preferred-install": "dist"
    }
}
person Rabea    schedule 23.12.2015