symfony2 : class included in AppKernel can not be found

标签 symfony

我有这个 app/AppKernel :

<?php

use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;

class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
            new Symfony\Bundle\SecurityBundle\SecurityBundle(),
            new Symfony\Bundle\TwigBundle\TwigBundle(),
            new Symfony\Bundle\MonologBundle\MonologBundle(),
            new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
            new Symfony\Bundle\AsseticBundle\AsseticBundle(),
            new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
            new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
            new JMS\AopBundle\JMSAopBundle(),
            new JMS\DiExtraBundle\JMSDiExtraBundle($this),
            new JMS\SecurityExtraBundle\JMSSecurityExtraBundle(),
            new JMS\I18nRoutingBundle\JMSI18nRoutingBundle(),
            new FOS\UserBundle\FOSUserBundle(),
            new Sports\FrontendBundle\SportsFrontendBundle(),   // line 25             
            new Sports\UserBundle\SportsUserBundle(),
            new Sonata\DefaultBundle\SonataDefaultBundle(),
            new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(),
            new Sonata\AdminBundle\SonataAdminBundle(),
            new Sonata\BlockBundle\SonataBlockBundle(),
            new Sonata\CacheBundle\SonataCacheBundle(),
            new Knp\Bundle\MenuBundle\KnpMenuBundle(),
            new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle()
        );

        if (in_array($this->getEnvironment(), array('dev', 'test'))) {
#$bundles[] = new Acme\DemoBundle\AcmeDemoBundle();
            $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
            $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
            $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
        }

        return $bundles;
    }

    public function registerContainerConfiguration(LoaderInterface $loader)
    {
        $loader->load(__DIR__.'/config/config_'.$this->getEnvironment().'.yml');
    }

还有这个类src/Sports/FrontendBundle/SportsFrontendBundle.php :
namespace Sports\FrontendBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class SportsFrontendBundle extends Bundle
{
}

我收到这个错误:

Fatal error: Class 'Sports\FrontendBundle\SportsFrontendBundle' not found in /home/tirengarfio/programacion/sports/app/AppKernel.php on line 25



这是我的 app/autoload.php :
<?php

use Doctrine\Common\Annotations\AnnotationRegistry;

if (!$loader = @include __DIR__.'/../vendor/autoload.php') {

    $message = <<< EOF
<p>You must set up the project dependencies by running the following commands:</p>
<pre>
    curl -s http://getcomposer.org/installer | php
    php composer.phar install
</pre>

EOF;

    if (PHP_SAPI === 'cli') {
        $message = strip_tags($message);
    }

    die($message);
}

// intl
if (!function_exists('intl_get_error_code')) {
    require_once __DIR__.'/../vendor/symfony/symfony/src/Symfony/Component/Locale/Resources/stubs/functions.php';

    $loader->add('', __DIR__.'/../vendor/symfony/symfony/src/Symfony/Component/Locale/Resources/stubs');
    $loader->add('Sports',   __DIR__ . '/../src');
}

AnnotationRegistry::registerLoader(array($loader, 'loadClass'));

return $loader;

和我的 composer.json :
{
    "name": "symfony/framework-standard-edition",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.1.1",
        "doctrine/orm": "2.2.*",
        "doctrine/doctrine-bundle": "dev-master",
        "twig/extensions": "dev-master",
        "symfony/assetic-bundle": "dev-master",
        "symfony/swiftmailer-bundle": "dev-master",
        "symfony/monolog-bundle": "dev-master",
        "sensio/framework-extra-bundle": "*",
        "sensio/distribution-bundle": "*",
        "sensio/generator-bundle": "*",
        "friendsofsymfony/user-bundle": "*",
        "jms/security-extra-bundle": "1.1.*",
        "jms/di-extra-bundle": "1.0.*",
        "jms/i18n-routing-bundle" : "1.0.*",
        "sonata-project/exporter" : "dev-master",
        "sonata-project/jquery-bundle" : "dev-master",
        "sonata-project/block-bundle" : "dev-master",
        "sonata-project/cache-bundle" : "dev-master",
        "sonata-project/admin-bundle" : "dev-master",
        "sonata-project/user-bundle" : "dev-master",
        "sonata-project/doctrine-orm-admin-bundle" : "dev-master",
        "stof/doctrine-extensions-bundle": "dev-master"
    },
    "scripts": {
        "post-install-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ],
        "post-update-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ]
    },
    "config": {
        "bin-dir": "bin"
    },
    "minimum-stability": "dev",
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web"
    }
}

任何的想法?

SF 2.1.1

哈维

最佳答案

对于将来的引用,如果您 checkout 代码并直接复制供应商文件夹而不运行 composer,则可能会发生类似的问题。

要排除自动加载问题,您只需运行 install在您的 symfony2 文件夹中(假设您有 composer.phar):

php composer.phar install

这将从 composer.lock 文件安装项目依赖项(如果存在),或者回退到 composer.json。

关于symfony2 : class included in AppKernel can not be found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12536923/

相关文章:

symfony - 如何在 netbeans 中从 Symfony 2 DI 自动完成方法

php - 具有多个表的 symfony2/Doctrine 实体

php - 具有多个具有相同名称的查询字符串参数的 Symfony HttpClient GET 请求

symfony - 学说 DQL : how to get expression to inversed side

php - Symfony 4 Custom Bundle 使用 Logger Interface

twitter-bootstrap - Symfony: "Template "bootstrap_3_layout.html.twig“不能用作特征”

php - 尝试安装 FOSUserBundle 但出现错误

javascript - 使用嵌入的表单集合保存相关 Doctrine 实体时出现 Symfony SQL 错误

php - 在 symfony2 中插入多对多关系

javascript - Symfony2 : How to include a js file inside another js?