首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 8当运行composer require laravel/passport时,您的需求无法解析为一组可安装的软件包

Laravel 8当运行composer require laravel/passport时,您的需求无法解析为一组可安装的软件包
EN

Stack Overflow用户
提问于 2020-11-18 00:18:25
回答 3查看 26.8K关注 0票数 4

这个问题有很多版本,但我还没有找到任何关于这些特定包的版本。

我正在尝试将laravel passport版本10安装到我的laravel 8安装中,当运行composer require laravel/passport时,我得到了以下响应:

代码语言:javascript
运行
复制
    Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/passport[v10.0.1, ..., 10.x-dev] require illuminate/auth ^8.2 -> found illuminate/auth[v8.2.0, ..., 8.x-dev] but it conflicts with another require.
    - laravel/passport v10.0.0 requires illuminate/auth ^8.0 -> found illuminate/auth[v8.0.0, ..., 8.x-dev] but it conflicts with another require.
    - Root composer.json requires laravel/passport ^10.0 -> satisfiable by laravel/passport[v10.0.0, v10.0.1, 10.x-dev].


Installation failed, reverting ./composer.json and ./composer.lock to their original content.

发现照明/AUTH^8.0 ->发现照明/authv8.0.0,...,8.x-dev <-我不理解这部分,它与我的composer.json中的“最低稳定性”:"dev“有关吗?

不管怎样,这是我的composer.json:

代码语言:javascript
运行
复制
   {
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.3|^8.0",
        "fideloper/proxy": "^4.4.1",
        "fruitcake/laravel-cors": "^2.0.3",
        "guzzlehttp/guzzle": "^7.0.1",
        "laravel/framework": "^9.0",
        "laravel/passport": "^10.0",
        "laravel/tinker": "^2.5|dev-develop",
        "paragonie/random_compat": "2.*"
    },
    "require-dev": {
        "fakerphp/faker": "^1.9.1",
        "mockery/mockery": "^1.4.2",
        "nunomaduro/collision": "^5.0",
        "phpunit/phpunit": "^9.3.3"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi"
        ]
    }
}

编辑1:我尝试运行composer require --no-update laravel/passport,当我运行composer update时,我得到了以下错误(我认为它可能提供了额外的信息):

代码语言:javascript
运行
复制
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/passport[v10.0.1, ..., 10.x-dev] require illuminate/support ^8.2 -> satisfiable by illuminate/support[v8.2.0, ..., 8.x-dev].
    - laravel/passport v10.0.0 requires illuminate/support ^8.0 -> satisfiable by illuminate/support[v8.0.0, ..., 8.x-dev].
    - Only one of these can be installed: illuminate/support[dev-master, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev], laravel/framework[dev-master]. laravel/framework replaces illuminate/support and thus 
cannot coexist with it.
    - laravel/framework 9.x-dev is an alias of laravel/framework dev-master and thus requires it to be installed too.
    - Root composer.json requires laravel/framework ^9.0 -> satisfiable by laravel/framework[9.x-dev (alias of dev-master)].
    - Root composer.json requires laravel/passport ^10.0 -> satisfiable by laravel/passport[v10.0.0, v10.0.1, 10.x-dev].

编辑2:为了进一步解释下面的答案,您必须删除项目中的供应商文件夹和composer.json文件,然后运行composer install将其降级到composer require laravel/passport 8。之后,您可以运行laravel,它将正确安装

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-11-18 01:03:21

将您的Laravel版本从9降级到8

代码语言:javascript
运行
复制
   {
"name": "laravel/laravel",
"type": "project",
"description": "The Laravel Framework.",
"keywords": [
    "framework",
    "laravel"
],
"license": "MIT",
"require": {
    "php": "^7.3|^8.0",
    "fideloper/proxy": "^4.4.1",
    "fruitcake/laravel-cors": "^2.0.3",
    "guzzlehttp/guzzle": "^7.0.1",
    "laravel/framework": "^8.0",
    "laravel/passport": "^10.0",
    "laravel/tinker": "^2.5|dev-develop",
    "paragonie/random_compat": "2.*"
},
"require-dev": {
    "fakerphp/faker": "^1.9.1",
    "mockery/mockery": "^1.4.2",
    "nunomaduro/collision": "^5.0",
    "phpunit/phpunit": "^9.3.3"
},
"config": {
    "optimize-autoloader": true,
    "preferred-install": "dist",
    "sort-packages": true
},
"extra": {
    "laravel": {
        "dont-discover": []
    }
},
"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Database\\Factories\\": "database/factories/",
        "Database\\Seeders\\": "database/seeders/"
    }
},
"autoload-dev": {
    "psr-4": {
        "Tests\\": "tests/"
    }
},
"minimum-stability": "dev",
"prefer-stable": true,
"scripts": {
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover --ansi"
    ],
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate --ansi"
    ]
}

}

票数 4
EN

Stack Overflow用户

发布于 2021-10-08 07:46:57

简单地做一件事

删除composer.lock文件,然后安装所需的软件包

这对我来说很有效。

票数 8
EN

Stack Overflow用户

发布于 2021-01-24 11:27:00

我可以通过在我的操作系统上修改PHP PATH来解决这个问题,当时我正在使用windowsWampServer

上面建议的更改可能会起作用,但如果正在运行composer install命令,这是因为应用程序已经存在,并且正在下载其依赖项,因此更改上面建议的文件可能会导致应用程序的操作出现问题。我认为将PATH注释更改为正确的PHP版本会起作用,在我的例子中:C:\wamp64\bin\php\php7.3.21起作用了。

瓦卢。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64879108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档