首页 > 解决方案 > production.ERROR:异常 'ReflectionException' 与消息 'Class App\Http\Controllers\Api\Builder\SiteController 不存在'compiled.php

问题描述

我正在尝试融合两个 Laravel 5.2 项目,第一个使用 Api 而第二个没有。我将所有控制器、视图和路由复制到第一个项目,并在数据库中使用迁移和模型添加了其他表,但我通过添加第一个表中不存在的列来浸入用户表,所以我有两个项目的一个用户。我还添加了所有路由,但我想在第二个项目的仪表板页面上使用第一个项目的 api 中间件,所以我在名为 builder 的文件夹内的 api 文件夹中添加了控制器,并像这样编写路由:

// Routes.php
Route::group(['namespace' => 'Api', 'prefix' => 'api/v1', 'middleware' => 'auth:api'], function () {
    // Route::group(['namespace' => 'Api', 'prefix' => 'api/v1'], function () {
    Route::get('', 'HomeController@index');

    //added for testing builder
    Route::get('/dashboard','Builder\SiteController@getDashboard');

然而我得到了这个错误,这是在compiled.php中显示错误的函数:

public function signatureParameters($subClass = null)
    {
        $action = $this->getAction();
        if (is_string($action['uses'])) {
            list($class, $method) = explode('@', $action['uses']);
            $parameters = (new ReflectionMethod($class, $method))->getParameters();
        } else {
            $parameters = (new ReflectionFunction($action['uses']))->getParameters();
        }
        return is_null($subClass) ? $parameters : array_filter($parameters, function ($p) use($subClass) {
            return $p->getClass() && $p->getClass()->isSubclassOf($subClass);
        });
    }

标签: laravellaravel-5.2

解决方案


推荐阅读