composer require overtrue/laravel-lang 报错

通过安装 overtrue/laravel-lang 这个扩展包可以直接把语言变成中文:

composer require overtrue/laravel-lang

然后再服务器运行代码之后报错

Problem 1
    - laravel/framework is locked to version v8.83.29 and an update of this package was not requested.
    - laravel/framework v8.83.29 requires tijsverkoyen/css-to-inline-styles ^2.2.2 -> satisfiable by tijsverkoyen/css-to-inline-styles[v2.3.0].
    - symfony/css-selector v7.2.0 requires php >=8.2 -> your php version (8.1.32) does not satisfy that requirement.
    - tijsverkoyen/css-to-inline-styles v2.3.0 requires symfony/css-selector ^5.4 || ^6.0 || ^7.0 -> satisfiable by symfony/css-selector[v7.2.0].

You can also try re-running composer require with an explicit version constraint, e.g. "composer require overtrue/laravel-lang:*" to figure out if any version is installable, or "composer require overtrue/laravel-lang:^2.1" if you know which you need.

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

根据错误信息,问题是由于依赖的 symfony/css-selector 版本过高(需要 PHP 8.2)导致的。以下是解决方案:

方法 1:降级 symfony/css-selector 到兼容版本 手动指定版本:在 composer.json 中添加版本约束,限制 symfony/css-selector 使用 6.x 系列:

composer require symfony/css-selector:^6.0

运行结果

./composer.json has been updated
Running composer update symfony/css-selector
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 1 update, 0 removals
  - Downgrading symfony/css-selector (v7.2.0 => v6.4.13)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 18 updates, 0 removals
  - Downloading symfony/string (v6.4.13)
  - Downloading graham-campbell/result-type (1.1.x-dev 9d6c1d7)
  - Downloading ramsey/collection (2.0.0)
  - Downloading brick/math (0.12.2)
  - Downloading symfony/translation (v6.4.13)
  - Downloading league/mime-type-detection (1.15.0)
  - Downloading nette/utils (v4.0.4)
  - Downloading league/commonmark (2.6.0)
  - Downloading fakerphp/faker (v1.23.1)
  - Downloading psr/http-factory (1.0.2)
  - Downloading guzzlehttp/promises (2.0.3)
  - Downloading symfony/yaml (v6.4.13)
  - Downloading nikic/php-parser (v5.3.1)
  - Downloading psy/psysh (v0.12.7)
  - Downloading laravel/tinker (v2.10.0)
  - Downloading filp/whoops (2.16.0)
  - Downloading phar-io/manifest (dev-master 54750ef)
  - Downloading myclabs/deep-copy (1.x-dev 024473a)
  0/18 [>---------------------------]   0%    Failed downloading brick/math, trying the next URL (404: The "https://mirrors.aliyun.com/composer/dists/brick/math/901eddb1e45a8e0f689302e40af871c181ecbe40.zip" file could not be downloaded (HTTP/2 404 ))
  - Downloading brick/math (0.12.2)
 15/18 [=======================>----]  83%    Failed downloading graham-campbell/result-type, trying the next URL (404: The "https://mirrors.aliyun.com/composer/dists/graham-campbell/result-type/9d6c1d7ce69a3329936e603617e59ba205ab0a66.zip" file could not be downloaded (HTTP/2 404 ))
  - Downloading graham-campbell/result-type (1.1.x-dev 9d6c1d7)
    Failed downloading myclabs/deep-copy, trying the next URL (404: The "https://mirrors.aliyun.com/composer/dists/myclabs/deep-copy/024473a478be9df5fdaca2c793f2232fe788e414.zip" file could not be downloaded (HTTP/2 404 ))
  - Downgrading symfony/string (v6.4.15 => v6.4.13): Extracting archive
  - Upgrading graham-campbell/result-type (v1.1.3 => 1.1.x-dev 9d6c1d7): Extracting archive
  - Downgrading ramsey/collection (2.1.1 => 2.0.0): Extracting archive
  - Downgrading brick/math (0.12.3 => 0.12.2): Extracting archive
  - Downgrading symfony/translation (v6.4.19 => v6.4.13): Extracting archive
  - Downgrading league/mime-type-detection (1.16.0 => 1.15.0): Extracting archive
  - Downgrading nette/utils (v4.0.5 => v4.0.4): Extracting archive
  - Downgrading league/commonmark (2.6.1 => 2.6.0): Extracting archive
  - Downgrading fakerphp/faker (v1.24.1 => v1.23.1): Extracting archive
  - Downgrading psr/http-factory (1.1.0 => 1.0.2): Extracting archive
  - Downgrading guzzlehttp/promises (2.0.4 => 2.0.3): Extracting archive
  - Downgrading symfony/yaml (v6.4.18 => v6.4.13): Extracting archive
  - Downgrading nikic/php-parser (v5.4.0 => v5.3.1): Extracting archive
  - Downgrading psy/psysh (v0.12.8 => v0.12.7): Extracting archive
  - Downgrading laravel/tinker (v2.10.1 => v2.10.0): Extracting archive
  - Downgrading filp/whoops (2.18.0 => 2.16.0): Extracting archive
  - Upgrading phar-io/manifest (2.0.4 => dev-master 54750ef): Extracting archive
  - Upgrading myclabs/deep-copy (1.13.0 => 1.x-dev 024473a): Extracting archive
Package fruitcake/laravel-cors is abandoned, you should avoid using it. No replacement was suggested.
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Package sebastian/resource-operations is abandoned, you should avoid using it. No replacement was suggested.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
78 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
Found 1 security vulnerability advisory affecting 1 package.
Run "composer audit" for a full list of advisories.

更新依赖:

composer update symfony/css-selector --with-all-dependencies

运行结果

Loading composer repositories with package information
Updating dependencies
Nothing to modify in lock file
Writing lock file
Installing dependencies from lock file (including require-dev)
Nothing to install, update or remove
Package fruitcake/laravel-cors is abandoned, you should avoid using it. No replacement was suggested.
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Package sebastian/resource-operations is abandoned, you should avoid using it. No replacement was suggested.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
78 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
Found 1 security vulnerability advisory affecting 1 package.
Run "composer audit" for a full list of advisories.

最后让我们继续安装overtrue/laravel-lang

composer require overtrue/laravel-lang

看到运行结果

./composer.json has been updated
Running composer update overtrue/laravel-lang
Loading composer repositories with package information
Updating dependencies
Lock file operations: 2 installs, 0 updates, 0 removals
  - Locking laravel-lang/lang (10.9.5)
  - Locking overtrue/laravel-lang (5.0.2)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 2 installs, 0 updates, 0 removals
  - Installing laravel-lang/lang (10.9.5): Extracting archive
  - Installing overtrue/laravel-lang (5.0.2): Extracting archive
2 package suggestions were added by new dependencies, use `composer suggest` to see details.
Package fruitcake/laravel-cors is abandoned, you should avoid using it. No replacement was suggested.
Package overtrue/laravel-lang is abandoned, you should avoid using it. No replacement was suggested.
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Package sebastian/resource-operations is abandoned, you should avoid using it. No replacement was suggested.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Discovered Package: overtrue/laravel-lang
Package manifest generated successfully.
80 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
Found 1 security vulnerability advisory affecting 1 package.
Run "composer audit" for a full list of advisories.
Using version ^5.0 for overtrue/laravel-lang

到这里我们的问题得以解决

luffy博客
Please login to comment
  • latest comments
  • Total 0 comments