【发布时间】:2017-07-06 10:52:20
【问题描述】:
我想在 Symfony 中开始一个新的 3.3 项目并像往常一样开始:
1.) 创建新项目:symfony new ArtProject
2.) 创建一个新的 Bundle:php app/console generate:bundle (Paul/ArtBundle, yml, src/)
然后我运行本地服务器,当我打开 127.0.0.1:8000 时,我收到了这条漂亮的消息:
(1/1) ClassNotFoundException
尝试从命名空间加载类“PaulArtBundle” “保罗\ArtBundle”。您是否忘记了另一个“使用”声明 命名空间?在 AppKernel.php 中(第 19 行)
这很奇怪,到目前为止我还没有弄清楚为什么会发生这种情况。在创建Bundle之前,没有错误;我看到了 symfony 的典型起始页。
public function registerBundles()
{
$bundles = [
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
......
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new AppBundle\AppBundle(),
new Paul\ArtBundle\PaulArtBundle(),
];
}
<?php
namespace Paul\ArtBundle;
use Symfony\Component\HttpKernel\Bundle\Bundle;
class PaulArtBundle extends Bundle
{
}
知道那里发生了什么吗?我没有改变任何东西,我只运行了这些命令。
【问题讨论】:
-
检查 AppKernel.php 是否正确?
-
@SamJanssens 是的,我也可以从内核跳转到 IDE 中的 php 文件
-
你注册好新的Bundle@Appkernel.php文件了吗?
-
好吧,显然某处发生了命名空间问题,但在哪里......
-
似乎对这些问题一无所知。检查 composer.json 文件的自动加载部分:stackoverflow.com/questions/44928982/… 最新版本可能有些问题。