脚本@php artisan包:发现处理返回的自动加载转储事件,错误代码为255

时间:2018-06-13 15:25:26

标签: php laravel laravel-5 console command

我将我的项目从桌面移动到另一个桌面 当我运行php artisan时,它不起作用。

我尝试运行composer update,但它返回错误

  

脚本@php artisan包:发现处理返回的自动加载转储事件,错误代码为255

17 个答案:

答案 0 :(得分:52)

这是我从laravel 6.x-7.x升级后解决的方法:

messid中已更改

create table `users`(
`userid` mediumint unsigned not null auto_increment primary key,
`name` tinytext not null
);

create table `messages`(
`messid` int unsigned not null auto_increment primary key,
`from` mediumint unsigned not null,
`to` mediumint unsigned not null,
`message` text not null,
`time` datetime default CURRENT_TIMESTAMP,
`read` bit(1) not null default b'0',
`delfrom` bit(1) not null default b'0',
`delto` bit(1) not null default b'0'
);

然后按照以下方法接受SYS_P***而不是SYS_PYYYYMM的实例:

ALTER TABLE table_name
RENAME PARTITION partition_name
TO new_name;

App\Exceptions\Handler中:

//Use Exception;
Use Throwable;

然后运行Throwable

答案 1 :(得分:15)

如果在Laravel从6.x更新到7.x之后发生这种情况,则可能是由于Symfony的更新。请参阅此部分的升级指南: https://laravel.com/docs/7.x/upgrade#symfony-5-related-upgrades

答案 2 :(得分:7)

我这样解决了这个问题:

cd bootstrap/cache/
rm -rf *.php

bootstrap目录包含用于初始化结构的app.php文件。该目录还包含一个缓存目录,其中包含结构生成的文件以优化性能,例如文件和路由缓存服务。 Laravel存储配置文件,提供程序和缓存的服务,以优化此信息的获取。我的问题是当另一个开发人员在您的计算机上运行“ php artisan config:cache”命令时,由于缓存文件夹中包含可以删除的文件,因此我删除了它们并解决了问题。

答案 3 :(得分:4)

新项目中是否有.env文件?

我有同样的错误信息。当我添加.env文件时,错误消失了。

这样的成功消息。

Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover
Discovered Package: fideloper/proxy
Discovered Package: ixudra/curl
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: socialiteproviders/manager
Package manifest generated successfully.

我希望这会对您有所帮助。

答案 4 :(得分:4)

发生这种情况是因为您已升级到Laravel 7。

要解决此问题,请像这样更新app/Exceptions/Handler.php

<?php

namespace App\Exceptions;

use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Throwable; // <-- ADD THIS

class Handler extends ExceptionHandler
{
    public function report(Throwable $exception) // <-- USE Throwable HERE
    {
        parent::report($exception);
    }
    public function render($request, Throwable $exception) // AND HERE
    {
        return parent::render($request, $exception);
    }
}

这在官方升级指南here中有记录:

https://laravel.com/docs/7.x/upgrade#symfony-5-related-upgrades

答案 5 :(得分:2)

我是upgrading my Laravel from 5.8 to 8.0,但遇到此错误。

所以我的解决方法是

  1. 就像@nobuhiroharada提到的,我在项目中错过了.env文件

  2. 第二个原因是Laravel删除了Exception并将其替换为Throwable。因此,我们需要在app\Exceptions\Handler.php中进行修复。一个人可以参考Medium.com来解决错误。

  3. Laravel 8.x的升级指南中,您需要更新依赖项like this

  4. 接下来,在您的composer.json文件中,从自动加载部分中删除classmap块,并添加新的命名空间的类目录映射:

"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Database\\Factories\\": "database/factories/",
        "Database\\Seeders\\": "database/seeders/"
    }
},

  1. 最后从bootstrap\cache删除缓存文件并运行composer update

这5个步骤可以帮助您消除Laravel项目中遇到的错误。

答案 6 :(得分:1)

大家好/世界您好。我这样解决了我的问题:


我删除了我的项目,创建了一个新文件夹,然后再次克隆了存储库,然后我给composer安装/更新了

祝你好运。

答案 7 :(得分:1)

我通过删除供应商表,然后运行撰写者更新来解决此错误。我正在使用Laravel7。因此,如果您不从较旧的Laravel版本进行更新,也许这就是解决方案。

答案 8 :(得分:0)

就我而言,

中缺少文件夹及其文件 Kernel.php <块引用>

应用程序/控制台

所以我使用之前项目的代码创建了 app/Console/Kernel.php。 现在一切正常。

答案 9 :(得分:0)

我删除了composer.lock文件并运行了composer更新。

那解决了我的

答案 10 :(得分:0)

将laravel从6.x更新到7.x时出现相同的问题

我尝试了投票最多的答案,但没有成功,然后我使用php artisan serve注意到了:

RuntimeException

In order to use the Auth::routes() method, please install the laravel/ui package.

尝试composer require laravel/ui也许可以。

答案 11 :(得分:0)

什么都没有。因此,我安装了一个新项目,并在App \ Exceptions中读取了Handler.php,它有所不同,可能是因为我复制了一些解决方案和Internet并删除了以下内容:

protected $dontReport = [
    //
];

protected $dontFlash = [
    'password',
    'password_confirmation',
];

我将laravel 7.5生成的所有Handler.php复制到此处,可能对某人有用:

<?php

namespace App\Exceptions;

use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Throwable;

class Handler extends ExceptionHandler
{
    /**
     * A list of the exception types that are not reported.
     *
     * @var array
     */
    protected $dontReport = [
        //
    ];

/**
 * A list of the inputs that are never flashed for validation exceptions.
 *
 * @var array
 */
protected $dontFlash = [
    'password',
    'password_confirmation',
];

/**
 * Report or log an exception.
 *
 * @param  \Throwable  $exception
 * @return void
 *
 * @throws \Exception
 */
public function report(Throwable $exception)
{
    parent::report($exception);
}

/**
 * Render an exception into an HTTP response.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Throwable  $exception
 * @return \Symfony\Component\HttpFoundation\Response
 *
 * @throws \Throwable
 */
public function render($request, Throwable $exception)
{
    return parent::render($request, $exception);
}

}

答案 12 :(得分:0)

这不是实际错误。如果您稍微看一下上方,将会看到实际的错误。 就我而言,我的代码有错误:

PHP Fatal error:  Declaration of 
App\Exceptions\Handler::render($request, App\Exceptions\Exception $exception)
must be compatible with 
Illuminate\Foundation\Exceptions\Handler::render($request, Throwable $e)

不可能告诉您代码中实际上是什么问题,因此您必须在堆栈跟踪中查找导致此错误的真正原因。

答案 13 :(得分:0)

在Laravel项目中运行artisan package:discover时,我遇到了同样的问题。在package.json中,将其配置为运行Class 'Symfony\Component\Translation\Translator' not found in vendor/nesbot/carbon/src/Carbon/Translator.php on line 18,但失败:

vendor/symfony/translation

当我查看vendor目录时,发现它完全是空的,这解释了错误。

解决方案是完全删除composer update目录,然后重新运行 var fld1 = currentRecord.getSublistField({ sublistId: 'recmachcustrecord_expse_clm_itm_parent', fieldId: 'custrecord_expse_clm_itm_sub_catgry', line: currentLine }); fld1.isDisabled = true; 。这是我能够使作曲家安装丢失的文件的唯一方法。

答案 14 :(得分:0)

我在Win 8中遇到了同样的问题,并解决了该问题:

这是步骤。

第1步:转到您的项目目录

步骤2:输入命令cd bootstrap/cache/

步骤3:再次键入命令del -rf *.php

步骤4:更新您的作曲家composer update

步骤5:现在您已完成:php artisan serve

谢谢。

答案 15 :(得分:0)

也许您的项目代码中有错误(例如,路线或控制器中)。这可能是导致此错误的原因之一。

在我的项目中,web.php文件存在语法错误。我在启动php artisan命令时定义了这个

C:\OSPanel\domains\lara.shop.loc>php artisan
In web.php line 
  syntax error, unexpected end of file  

答案 16 :(得分:-3)

当我的 Composer 版本 2.x 出现这个错误然后我回滚这个

composer self-update --1

现在完美运行