php - 在 PHP 7.2 Ubuntu 上运行 composer install 时出错
问题描述
在 PHP 7.2 - Laravel 5.1 上的作曲家安装结束时,我一直收到此错误
> php artisan clear-compiled
PHP Fatal error: Uncaught TypeError: Argument 1 passed to App\Exceptions\Handler::report() must be an instance of Exception, instance of Error given, called in /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php on line 73 and defined in /home/forge/bheng/app/Exceptions/Handler.php:29
Stack trace:
#0 /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(73): App\Exceptions\Handler->report(Object(Error))
#1 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleException(Object(Error))
#2 {main}
thrown in /home/forge/bheng/app/Exceptions/Handler.php on line 29
[2019-01-31 10:29:34] production.ERROR: Symfony\Component\Debug\Exception\FatalErrorException: Uncaught TypeError: Argument 1 passed to App\Exceptions\Handler::report() must be an instance of Exception, instance of Error given, called in /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php on line 73 and defined in /home/forge/bheng/app/Exceptions/Handler.php:29
Stack trace:
#0 /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(73): App\Exceptions\Handler->report(Object(Error))
#1 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleException(Object(Error))
#2 {main}
thrown in /home/forge/bheng/app/Exceptions/Handler.php:29
Stack trace:
#0 {main}
[Symfony\Component\Debug\Exception\FatalErrorException]
Uncaught TypeError: Argument 1 passed to App\Exceptions\Handler::report() must be an instance of Exception, instance of Error given, called in /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php on line 73 and defined in /home/forge/bheng/app/Exceptions/Handler.php:29
Stack trace:
#0 /home/forge/bheng/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(73): App\Exceptions\Handler->report(Object(Error))
#1 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleException(Object(Error))
#2 {main}
thrown
Script php artisan clear-compiled handling the post-update-cmd event returned with error code 255
┌──[root@bheng]──[/home/forge/bheng]
└──
应用程序/异常/Handler.php
<?php namespace App\Exceptions;
use Exception;
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
class Handler extends ExceptionHandler {
/**
* A list of the exception types that should not be reported.
*
* @var array
*/
protected $dontReport = [
'Symfony\Component\HttpKernel\Exception\HttpException'
];
/**
* Report or log an exception.
*
* This is a great spot to send exceptions to Sentry, Bugsnag, etc.
*
* @param \Exception $e
* @return void
*/
public function report(Exception $e)
{
return parent::report($e);
}
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param \Exception $e
* @return \Illuminate\Http\Response
*/
public function render($request, Exception $e)
{
if ($this->isHttpException($e))
{
return $this->renderHttpException($e);
}
else if($e instanceof NotFoundHttpException)
{
return response()->view('missing', [], 404);
}
else if($e instanceof ModelNotFoundException )
{
return response()->view('layouts.share.errors.model_not_found', [], 404);
}
else
{
return parent::render($request, $e);
}
}
}
细节
我已经尝试过这两个命令
我仍然得到相同的结果。
我怎样才能防止这种情况?
解决方案
您可以运行composer install --no-scripts
或composer update --no-scripts
安装/更新任何软件包,它会跳过运行任何artisan
命令。
然后,您可以尝试运行php artisan clear-compiled
以查看更新是否已解决问题。
如果这不起作用,您应该考虑升级您的应用程序以使用更新的 Laravel 版本,或者将 PHP 降级到与您要使用的 Laravel 版本兼容的旧版本。
推荐阅读
- java - 在 Java 中将特殊字符写入属性文件的问题
- node.js - 突变 null 返回 GraphQL
- symfony - Symfony Composer 创建项目卡在将“symfony/symfony”中列出的包限制为“5.0.*”
- python - 如何在列表的不同部分执行特定操作?
- python - Visual Studio 2019 无法识别 pygame
- angular - localStorage.getItem('token') 行为奇怪
- python - 为什么我们将函数作为参数传入而不在 django 中执行?
- c - 全局定义未知维度的数组
- amazon-web-services - 支持秘密管理器轮换的 aws lambda 函数
- pandas - convert pandas datetime64[ns] to julian day