首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony 4- ClassNotFoundException核

Symfony 4- ClassNotFoundException核
EN

Stack Overflow用户
提问于 2017-12-26 18:17:34
回答 2查看 9K关注 0票数 11

我实际上正在将我的symfony 3.4项目升级到symfony 4.0。在使用composer更新从我的gitlab存储库进行克隆包后,我有一个错误:

代码语言:javascript
复制
ClassNotFoundException

Attempted to load class "Kernel" from namespace "App".
Did you forget a "use" statement for "Symfony\Component\HttpKernel\Kernel"?


in index.php (line 32)

好吧..。轻松点..。走index.php 32线..。但是,内核加载了App\ Kernel,所以知道为什么会有这个错误或者我可以在哪里搜索吗?

谢谢你的帮助。

index.php

代码语言:javascript
复制
use App\Kernel;
use Symfony\Component\Debug\Debug;
use Symfony\Component\Dotenv\Dotenv;
use Symfony\Component\HttpFoundation\Request;

require __DIR__.'/../vendor/autoload.php';

// The check is to ensure we don't use .env in production
if (!isset($_SERVER['APP_ENV'])) {
    (new Dotenv())->load(__DIR__.'/../.env');
}

if ($_SERVER['APP_DEBUG'] ?? ('prod' !== ($_SERVER['APP_ENV'] ?? 'dev'))) {
    umask(0000);

    Debug::enable();
}


    // Request::setTrustedProxies(['0.0.0.0/0'], Request::HEADER_FORWARDED);

$kernel = new Kernel($_SERVER['APP_ENV'] ?? 'dev', $_SERVER['APP_DEBUG'] ?? ('prod' !== ($_SERVER['APP_ENV'] ?? 'dev')));

$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);

在"src“目录中,我有一个Kernel.php文件

代码语言:javascript
复制
namespace App;

use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait;
use Symfony\Component\Config\Loader\LoaderInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Kernel as BaseKernel;
use Symfony\Component\Routing\RouteCollectionBuilder;

class Kernel extends BaseKernel
{
    use MicroKernelTrait;

    const CONFIG_EXTS = '.{php,xml,yaml,yml}';
    .....
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-03 00:26:17

Symfony 4使用文件夹App进行自动加载psr-4。我试着改变它,但没有成功。检查composer.json文件中的名称空间,在属性autoload中,然后在psr-4中。也许你改变了默认的。

票数 5
EN

Stack Overflow用户

发布于 2020-11-27 16:58:26

也许您只是意外地删除了composer.json中的PSR-4块,即总是需要Symfony4的

代码语言:javascript
复制
"autoload": {
    "psr-4": {
        "App\\": "src/"
    }
},
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47982235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档