创建包后Symfony3 ClassNotFoundException

创建包后Symfony3 ClassNotFoundException

我想在Symfony开始一个新的3.3项目并像往常一样开始:

1.)创建新项目: symfony new ArtProject

2.)创建一个新的Bundle :( php app/console generate:bundlePaul / ArtBundle,yml,src /)

然后我运行本地服务器,当我打开127.0.0.1:8000时,我得到了这个美丽的信息:

(1/1)ClassNotFoundException

尝试从名称空间“Paul \ ArtBundle”加载类“PaulArtBundle”。您是否忘记了另一个命名空间的“use”语句?在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(),
    ];}

<?phpnamespace Paul\ArtBundle;use Symfony\Component\HttpKernel\Bundle\Bundle;class PaulArtBundle extends Bundle{}

有什么想法吗?我没有更改任何东西,我只运行这些命令。


守候你守候我
浏览 314回答 3
3回答

白猪掌柜的

如果您生成一个用于多个项目(具有自己的命名空间)的包,则需要将其添加到以下内容中composer.json:假设您的包名称是CompanyFooBundle命名空间,Company\Bundle\FooBundle那么composer autoload部分应该如下所示:..."autoload":&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;"psr-4":&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"Company\\Bundle\\FooBundle\\":&nbsp;"src/Company/Bundle/FooBundle" &nbsp;&nbsp;&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;"classmap":&nbsp;[ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"app/AppKernel.php", &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"app/AppCache.php" &nbsp;&nbsp;&nbsp;&nbsp;]},...
打开App,查看更多内容
随时随地看视频慕课网APP