Laravel 9作曲家语法错误,意外令牌“)”

发布于 2025-02-02 18:45:28 字数 3229 浏览 3 评论 0原文

在我的Laravel 9项目中,我运行Composer Update我遇到了此错误消息:

Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 1 removal
  - Downloading fruitcake/laravel-cors (v3.0.0)
  - Removing asm89/stack-cors (v2.1.1)
  - Upgrading fruitcake/laravel-cors (v2.2.0 => v3.0.0): Extracting archive
77 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

In Finder.php line 588:

  syntax error, unexpected token ")"


Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1

看来更新已经完成,但是出现了问题,现在在控制台中,我遇到了语法错误,意外令牌”)) “ finder.php上的错误:588

我检查了这个文件,看起来正确。

当我在浏览器中打开项目时,我会收到此错误:

Fatal error: Uncaught RuntimeException: A facade root has not been set. in /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:334
Stack trace:
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/RegisterErrorViewPaths.php(18): Illuminate\Support\Facades\Facade::__callStatic('replaceNamespac...', Array)
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(626): Illuminate\Foundation\Exceptions\RegisterErrorViewPaths->__invoke()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(607): Illuminate\Foundation\Exceptions\Handler->registerErrorViewPaths()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(538): Illuminate\Foundation\Exceptions\Handler->renderHttpException(Object(Symfony\Component\HttpKernel\Exception\HttpException))
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(444): Illuminate\Foundation\Exceptions\Handler->prepareResponse(Object(Illuminate\Http\Request), Object(Symfony\Component\HttpKernel\Exception\HttpException))
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(364): Illuminate\Foundation\Exceptions\Handler->renderExceptionResponse(Object(Illuminate\Http\Request), Object(ParseError))
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(427): Illuminate\Foundation\Exceptions\Handler->render(Object(Illuminate\Http\Request), Object(ParseError))
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(115): Illuminate\Foundation\Http\Kernel->renderException(Object(Illuminate\Http\Request), Object(ParseError))
#8 /var/www/html/public/index.php(52): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#9 {main}
  thrown in /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 334

我清除了bootstrap/cahce/storage> storage/framework/cache/cache/data/code>中的所有缓存。存储/框架/会议/存储/框架/浏览/文件夹。

我使用PHP版本8.0.16。

作曲家版本2.0.12 2021-04-01 10:14:59。

知道我该如何解决这个问题?

After in my Laravel 9 project I run composer update I faced this error message:

Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 1 removal
  - Downloading fruitcake/laravel-cors (v3.0.0)
  - Removing asm89/stack-cors (v2.1.1)
  - Upgrading fruitcake/laravel-cors (v2.2.0 => v3.0.0): Extracting archive
77 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

In Finder.php line 588:

  syntax error, unexpected token ")"


Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1

It seems update was finished, but something went wrong and now in the console I get syntax error, unexpected token ")" error on Finder.php:588.

I checked this file and it's looks correct.

When I open my project in browser I get this error:

Fatal error: Uncaught RuntimeException: A facade root has not been set. in /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:334
Stack trace:
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/RegisterErrorViewPaths.php(18): Illuminate\Support\Facades\Facade::__callStatic('replaceNamespac...', Array)
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(626): Illuminate\Foundation\Exceptions\RegisterErrorViewPaths->__invoke()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(607): Illuminate\Foundation\Exceptions\Handler->registerErrorViewPaths()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(538): Illuminate\Foundation\Exceptions\Handler->renderHttpException(Object(Symfony\Component\HttpKernel\Exception\HttpException))
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(444): Illuminate\Foundation\Exceptions\Handler->prepareResponse(Object(Illuminate\Http\Request), Object(Symfony\Component\HttpKernel\Exception\HttpException))
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(364): Illuminate\Foundation\Exceptions\Handler->renderExceptionResponse(Object(Illuminate\Http\Request), Object(ParseError))
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(427): Illuminate\Foundation\Exceptions\Handler->render(Object(Illuminate\Http\Request), Object(ParseError))
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(115): Illuminate\Foundation\Http\Kernel->renderException(Object(Illuminate\Http\Request), Object(ParseError))
#8 /var/www/html/public/index.php(52): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#9 {main}
  thrown in /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 334

I cleared all the caches in bootstrap/cahce/ and in storage/framework/cache/data/, storage/framework/sessions/, storage/framework/views/ folders too.

I use PHP version 8.0.16.

Composer version 2.0.12 2021-04-01 10:14:59.

Any idea how can I fix this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

九歌凝 2025-02-09 18:45:28

要继续使用PHP 8.0,将这些条目添加到您的作曲家中。JSON

    "require": {
        ...
        "symfony/console": "6.0.*",
        "symfony/error-handler": "6.0.*",
        "symfony/finder": "6.0.*",
        "symfony/http-foundation": "6.0.*",
        "symfony/http-kernel": "6.0.*",
        "symfony/mailer": "6.0.*",
        "symfony/mime": "6.0.*",
        "symfony/process": "6.0.*",
        "symfony/routing": "6.0.*",
        "symfony/var-dumper": "6.0.*",
        "symfony/event-dispatcher": "6.0.*",
        "symfony/string": "6.0.*",
        "symfony/translation": "6.0.*",
        "symfony/translation-contracts": "3.0.*",
        "symfony/service-contracts": "3.0.*",
        "symfony/event-dispatcher-contracts": "3.0.*",
        "symfony/deprecation-contracts": "3.0.*",
        ...
    }

为我使用PHP 8.0和Laravel 9。

To continue using php 8.0 add these entries to your composer.json

    "require": {
        ...
        "symfony/console": "6.0.*",
        "symfony/error-handler": "6.0.*",
        "symfony/finder": "6.0.*",
        "symfony/http-foundation": "6.0.*",
        "symfony/http-kernel": "6.0.*",
        "symfony/mailer": "6.0.*",
        "symfony/mime": "6.0.*",
        "symfony/process": "6.0.*",
        "symfony/routing": "6.0.*",
        "symfony/var-dumper": "6.0.*",
        "symfony/event-dispatcher": "6.0.*",
        "symfony/string": "6.0.*",
        "symfony/translation": "6.0.*",
        "symfony/translation-contracts": "3.0.*",
        "symfony/service-contracts": "3.0.*",
        "symfony/event-dispatcher-contracts": "3.0.*",
        "symfony/deprecation-contracts": "3.0.*",
        ...
    }

Worked for me with php 8.0 and Laravel 9.

最后的乘客 2025-02-09 18:45:28

我做到了:

composer require --ignore-platform-reqs symfony/finder 6.1

现在我有一个类似的问题:

[2022-05-30 17:52:03] laravel.ERROR: syntax error, unexpected token ")" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected token \")\" at /vendor/symfony/finder/Finder.php:588)
[stacktrace]
#0 /vendor/composer/ClassLoader.php(346): Composer\\Autoload\\includeFile()
#1 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(88): Composer\\Autoload\\ClassLoader->loadClass()
#2 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(65): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->getConfigurationFiles()
#3 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(39): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->loadConfigurationFiles()
#4 /vendor/laravel/framework/src/Illuminate/Foundation/Application.php(239): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->bootstrap()
#5 /vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(310): Illuminate\\Foundation\\Application->bootstrapWith()
#6 /vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(127): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#7 /artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#8 {main}
"}

所以我认为这是与PHP 8.0不兼容的Symfony/Finder的版本,请尝试将任何Symfony相关的软件包降级到6.0.x,因为我不认为您需要Symfony /Finder直接,但是

我认为您可能在某个时候使用PHP 8.1安装了依赖项,并且您的包裹版本错误,或者您的包裹版本错误,或者也许您已经安装了Laravel 10而不是Laravel 9?

I did :

composer require --ignore-platform-reqs symfony/finder 6.1

and i have a similar issue now :

[2022-05-30 17:52:03] laravel.ERROR: syntax error, unexpected token ")" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected token \")\" at /vendor/symfony/finder/Finder.php:588)
[stacktrace]
#0 /vendor/composer/ClassLoader.php(346): Composer\\Autoload\\includeFile()
#1 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(88): Composer\\Autoload\\ClassLoader->loadClass()
#2 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(65): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->getConfigurationFiles()
#3 /vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php(39): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->loadConfigurationFiles()
#4 /vendor/laravel/framework/src/Illuminate/Foundation/Application.php(239): Illuminate\\Foundation\\Bootstrap\\LoadConfiguration->bootstrap()
#5 /vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(310): Illuminate\\Foundation\\Application->bootstrapWith()
#6 /vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(127): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#7 /artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle()
#8 {main}
"}

So i think it's the version of symfony/finder that is not compatible with php 8.0, try to downgrade any symfony related package to 6.0.x, because i don't think you require symfony/finder directly, but some other package like symfony/http-client

I think you perhaps installed dependencies using php 8.1 at some point and you got wrong packages versions, or perhaps you have laravel 10 installed and not laravel 9 ?

记忆里有你的影子 2025-02-09 18:45:28

我找到了一个Soution:

  1. 升级到PHP 8.1
  2. 运行Docker Pull Composer以升级最新版本的作曲家(从2.0到2.2)
  3. Run Composer Update

I found a soution:

  1. upgrade to PHP 8.1
  2. run docker pull composer to upgrade latest version of composer (from 2.0 to 2.2)
  3. run composer update in Docker container
带刺的爱情 2025-02-09 18:45:28

将您的PHP版本升级到php 8.1应该解决问题。并确保再次运行Composer installComposer Update

Upgrading your PHP version to PHP 8.1 should solve the problem. And just make sure to run composer install or composer update again

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文