相关疑难解决方法(0)

如何降级或安装特定版本的 Composer?

我正在设置的项目中出现以下错误:

您正在使用 Composer 2,您的某些插件似乎与之不兼容。确保您更新插件或报告插件问题以要求他们支持 Composer 2。

我本周开始在一家新公司工作,只是试图安装他们的项目,但似乎没有办法在 Windows 上更改我的作曲家版本。我宁愿不更新他们的所有软件包,因为我还不熟悉这些项目,也不知道其中有什么样的影响。

php windows composer-php

79
推荐指数
4
解决办法
8万
查看次数

运行composer install时如何解决两个包需求冲突?

我想安装这两个包:

  • "anahkiasen/former":"dev-master"
  • "vespakoen/menu":"dev-master"

但作曲家说,他们每个人都依赖于这个包的不同版本:

  • "anahkiasen/html-object":"dev-master"
  • "anahkiasen/html-object":"1.1.2"

问题1

- Installation request for anahkiasen/former dev-master -> satisfiable by anahkiasen/former[dev-master].
- Can only install one of: anahkiasen/html-object[dev-master, 1.1.2].
- vespakoen/menu dev-master requires anahkiasen/html-object 1.1.2 -> satisfiable by anahkiasen/html-object[1.1.2].
- anahkiasen/former dev-master requires anahkiasen/html-object dev-master -> satisfiable by anahkiasen/html-object[dev-master].
- Installation request for vespakoen/menu dev-master -> satisfiable by vespakoen/menu[dev-master].
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

conflict composer-php

33
推荐指数
1
解决办法
2万
查看次数

如何在运行composer时始终使用ignore-platform-reqs标志?

在我的本地机器上,我有php v7.0.3.我的一个项目依赖于php v5.5.

正如预期的那样,一场简单的composer install崩溃:

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

  Problem 1
    - This package requires php ~5.5 but your PHP version (7.0.3) does not satisfy that requirement.
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过以下方式忽略该平台:

composer install --ignore-platform-reqs
Run Code Online (Sandbox Code Playgroud)

但我经常忘记添加旗帜.然而,由于应用程序在docker容器内运行,不匹配的php可以安装依赖项一样好.

所以我想知道是否有办法让我的本地作曲家总是假设--ignore-platform-reqs为了不必输入它.

我喜欢避免设置别名并让它在composer配置级别上工作.

php configuration composer-php hhvm

13
推荐指数
4
解决办法
9637
查看次数

如何解决"只能安装一个:"的冲突?

我已经通过Composer安装了一个软件包,并且因为软件包而安装了Guzzlehttp.之后我试图通过Composer安装另一个软件包,这也需要Guzzlehttp和Composer,试图再次安装它.

但我得到了这个错误:

问题1

  • 只能安装以下之一:guzzlehttp/guzzle [6.2.0,6.0.2].

  • 只能安装以下之一:guzzlehttp/guzzle [6.0.2,6.2.0].

  • 只能安装以下之一:guzzlehttp/guzzle [6.0.2,6.2.0].

我看到了什么问题,但我不知道如何解决它.

composer-php

10
推荐指数
2
解决办法
6264
查看次数

但这些与您的要求或最低稳定性相冲突

嗨,当我尝试安装SparkPost PHP库时,我遇到了这个问题:

问题1
- 请求的包sparkpost/sparkpost没有版本集(解析为1.0.0)可以通过sparkpost/sparkpost [没有版本集(解析为1.0.0)]来满足,但这些与您的要求或最小稳定性相冲突.

当我尝试执行此命令时出现:
composer require sparkpost/sparkpost


完整控制台输出:

You are running Composer with SSL/TLS protection disabled.
Using version ^2.0 for sparkpost/sparkpost
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested package sparkpost/sparkpost No version set (parsed as 1.0.0) is satisfiable by sparkpost/sparkpost[No version set (parsed as 1.0.0)] but these conflict with your requirements …
Run Code Online (Sandbox Code Playgroud)

php composer-php sparkpost

7
推荐指数
1
解决办法
5652
查看次数

laravel/ui[v3.2.0, ..., 3.x-dev] 需要照明/控制台 ^8.0

我尝试安装:

作曲家需要 laravel/ui

但我一直收到这个错误:

laravel/ui[v3.2.0, ..., 3.x-dev] 需要照明/控制台 ^8.0 -> 找到照明/控制台[v8.0.0, ..., 8.x-dev] 但这些没有加载,可能是因为它与另一个需求冲突。- 根 composer.json 需要 laravel/ui ^3.2 -> 可满足 laravel/ui[v3.2.0, 3.x-dev]。这是我的 composer.json:

{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.2.5|^8.0",
        "fideloper/proxy": "^4.4",
        "fruitcake/laravel-cors": "^2.0",
        "guzzlehttp/guzzle": "^6.3.1|^7.0.1",
        "laravel/framework": "^7.29",
        "laravel/tinker": "^2.5"
    },
    "require-dev": {
        "facade/ignition": "^2.0",
        "fakerphp/faker": "^1.9.1",
        "mockery/mockery": "^1.3.1",
        "nunomaduro/collision": "^4.3",
        "phpunit/phpunit": "^8.5.8|^9.3.3"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "extra": {
        "laravel": …
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php laravel-ui laravel-7

6
推荐指数
2
解决办法
7548
查看次数

在锁定依赖项时发现最新版本的Composer软件包

假设我有一个composer.json锁定依赖项的文件:

{
  "require" : {
   "zendframework/zendframework" : "2.4.2"
  },
  "require-dev": {
    "phpunit/phpunit": "4.6.6"
  }
}
Run Code Online (Sandbox Code Playgroud)

我想这样做是因为想要手动更新依赖项,所以我不会遇到构建失败或其他开发人员遇到我没有的问题的情况,因为Composer安装了不同版本的软件包.

是否有一种很好的方法可以使用Composer列出锁定包的所有较新版本,也许类似于composer discover我获得输出的地方:zendframework/zendframework锁定版本2.4.2(2.4.*或其他),但有版本2.5.0,2.5.1和2.6.0可用*?

现有的任何命令都能提供这种信息吗?


基本上,我更关注向我展示的新版本,因此我可以知道手动更新的依赖项.承诺composer.lock不是真正的解决方案,因为这不会告诉我要更新的内容(并且我composer.json被锁定在特定版本,因此composer.lock无论如何都不会有所不同).

php dependency-management composer-php

5
推荐指数
1
解决办法
219
查看次数

当(似乎)没有障碍物时,为什么作曲家会说“结论:不要安装”?

以下内容composer.json

{
    "type": "project",
    "minimum-stability": "dev",
    "require": {
        "jasny/bootstrap": ">=3.1.3",
        "2amigos/yii2-file-input-widget": "*"
    }
}
Run Code Online (Sandbox Code Playgroud)

导致以下输出composer update

Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.                               

  Problem 1
    - 2amigos/yii2-file-input-widget 0.1.2 requires jasny/bootstrap v3.1.0 -> satisfiable by jasny/bootstrap[v3.1.0] but these conflict with your requirements or minimum-stability.
    - 2amigos/yii2-file-input-widget 0.1.1 requires jasny/bootstrap v3.1.0 -> satisfiable by jasny/bootstrap[v3.1.0] but these conflict with your requirements or minimum-stability. …
Run Code Online (Sandbox Code Playgroud)

composer-php

5
推荐指数
1
解决办法
2777
查看次数

如何确定是什么阻止 Composer 安装最新版本的软件包?

我正在使用 Composer Dependency Manager for PHP,它不会安装最新版本的软件包。如何确定是什么阻碍了 Composer 安装最新版本?

例如,我symfony/consolecomposer.json版本中设置为:

"symfony/console": "~3.1",
Run Code Online (Sandbox Code Playgroud)

如果我运行composer outdated它会显示我symfony/console安装了 3.1.4 版本,并且该版本 3.3.5 可用并且与 semver 兼容。

$ composer outdated --no-ansi
symfony/console                    v3.1.4  ! v3.3.5  Symfony Console Component
Run Code Online (Sandbox Code Playgroud)

但是,如果我对更新进行试运行,则只有到 3.2.12 版为止。

$ composer update --dry-run --with-dependencies symfony/console
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 2 installs, 2 updates, 0 removals
  - Updating symfony/polyfill-mbstring (v1.2.0) to symfony/polyfill-mbstring (v1.4.0)
  - Installing psr/log (1.0.2)
  - Installing symfony/debug (v3.3.5) …
Run Code Online (Sandbox Code Playgroud)

php composer-php

4
推荐指数
1
解决办法
2200
查看次数

composer.json无法解析可安装的包集

我无法stof/doctrine-extensions-bundle使用我的Composer进行安装.我正在使用Symfony2.1.9版本,并显示了很多问题.第一个是:

找不到请求的包stof/doctrine-extensions-bundle 1.1.*.

这是我的composer.json档案:

{
    "name": "symfony/framework-standard-edition",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.1.*",
        "doctrine/orm": ">=2.2.3,<2.5-dev",
        "doctrine/doctrine-bundle": "1.1.*",
        "twig/extensions": "1.0.*@dev",
        "symfony/assetic-bundle": "2.1.*",
        "symfony/swiftmailer-bundle": "2.1.*",
        "symfony/monolog-bundle": "2.1.*",
        "sensio/distribution-bundle": "2.1.*",
        "sensio/framework-extra-bundle": "2.1.*",
        "sensio/generator-bundle": "2.1.*",
        "jms/security-extra-bundle": "1.2.*",
        "jms/di-extra-bundle": "1.1.*",
        "kriswallsmith/assetic": "1.1.*@dev",
        "pagerfanta/pagerfanta": "dev-master",
        "white-october/pagerfanta-bundle": "dev-master",
        "friendsofsymfony/user-bundle": "dev-master",
        "saad-tazi/g-chart-bundle": "dev-master",
       "stof/doctrine-extensions-bundle": "1.1.*",
    },
    "scripts": {
        "post-install-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ],
        "post-update-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", …
Run Code Online (Sandbox Code Playgroud)

symfony composer-php symfony-2.1

3
推荐指数
1
解决办法
7454
查看次数

参考 - 升级 PHP 后 Composer 错误“您的 PHP 版本不满足要求”

将 PHP 从 7.4 更新到 8.0 后,我composer update在现有项目上运行,出现如下错误:

  • acme/some-package[1.0.0, ..., 1.4.0] 需要 php ^5.6.4 || ^7.0 -> 您的 php 版本 (8.0.3) 不满足该要求。

这是什么意思,我该如何解决?

(这是一个参考答案,旨在涵盖一个经常遇到的问题。场景只是一个例子。另见:“如何解释 Composer 的错误日志? ”)

php composer-php php-8

3
推荐指数
3
解决办法
677
查看次数

Laravel MaatWebsite / Excel Composer在Mac中安装错误

尝试通过Mac的composer在XAMPP 7.1.32 rev 1中安装maatwebsite / excel。如何在Mac的XAMPP中启用这些扩展,或者是否有任何其他问题。请帮我。

composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - maatwebsite/excel 3.1.10 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
    - maatwebsite/excel 3.1.11 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
    - maatwebsite/excel 3.1.12 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
    - maatwebsite/excel 3.1.13 …
Run Code Online (Sandbox Code Playgroud)

php laravel maatwebsite-excel

2
推荐指数
4
解决办法
289
查看次数

如何解决 Laravel 安装包时出现 Guzzle 错误

尝试安装软件包但显示guzzle错误问题1,当前项目要求是

 "require": {
        "php": "^7.2",
        "fideloper/proxy": "^4.0",
        "guzzlehttp/guzzle": "^7.0",
        "guzzlehttp/psr7": "^1.6",
        "laravel/framework": "^6.2",
        "laravel/tinker": "^2.0",
        "php-http/curl-client": "^2.1"
    }, 

 Problem 1
    - Installation request for edujugon/laravel-google-ads ^1.2 -> satisfiable by edujugon/laravel-google-ads[1.2.0, 1.2.1, 1.2.10, 1.2.11, 1.2.12, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.2.8, 1.2.9].
    - Can only install one of: guzzlehttp/guzzle[6.5.x-dev, 7.0.1].
    - Can only install one of: guzzlehttp/guzzle[7.0.1, 6.5.x-dev].
    - Can only install one of: guzzlehttp/guzzle[6.5.x-dev, 7.0.1].
    - Conclusion: install guzzlehttp/guzzle 6.5.x-dev
    - Installation request for guzzlehttp/guzzle (locked at 7.0.1, required …
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php guzzle

-1
推荐指数
1
解决办法
1万
查看次数