Хороший улов - это была именно проблема. С правильной командой импорта работает! Благодарю вас!

ЛЕНИЕ

В моем личном проекте я использую:

Symfony v3.2.7PHP v7.1.1CravlerMaxMindGeoIpBundleКак вызвать команду из контроллераНа компьютере с Windows 10 ProTARGET

Я хотел бы бежатьCravlerMaxMindGeoIpBundle's командаphp bin/console cravler:maxmind:geoip-update от контроллера успешно.

ПРОБЛЕМА

На данный момент я настроилCravlerMaxMindGeoIpBundle связка и командаphp bin/console cravler:maxmind:geoip-update отлично работает в командной строке.

Затем я следовал официальной документации (4-я ссылка во вступительном разделе). Изменили вызываемую команду, конечно. И все же я получаю ошибку.

[Symfony\Component\Console\Exception\CommandNotFoundException]
There are no commands defined in the "cravler:maxmind" namespace.
ВОПРОС

Что я должен сделать, чтобы запустить команду без ошибки?

КОД

Мои действия в контроллере

public function geoIpUpdateAction(Request $request)
{
    $kernel = $this->get('kernel');
    $application = new Application($kernel);
    $application->setAutoExit(false);

    $input = new ArrayInput(array(
        'command' => 'cravler:maxmind:geoip-update'
    ));
    // You can use NullOutput() if you don't need the output
    $output = new BufferedOutput();
    $application->run($input, $output);

    // return the output, don't use if you used NullOutput()
    $content = $output->fetch();

    // return new Response(""), if you used NullOutput()
    dump($content);

    return $this->render('admin/geo_ip.html.twig');
}

Мой AppKernel с включенными комплектами

<?php

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

class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = [
            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 Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
            new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
            new AppBundle\AppBundle(),
            new Bmatzner\FoundationBundle\BmatznerFoundationBundle(),
            new Knp\Bundle\TimeBundle\KnpTimeBundle(),
            new FOS\UserBundle\FOSUserBundle(),
            new Cravler\MaxMindGeoIpBundle\CravlerMaxMindGeoIpBundle(),
        ];

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

        return $bundles;
    }

    public function getRootDir()
    {
        return __DIR__;
    }

    public function getCacheDir()
    {
        return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
    }

    public function getLogDir()
    {
        return dirname(__DIR__).'/var/logs';
    }

    public function registerContainerConfiguration(LoaderInterface $loader)
    {
        $loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml');
    }
}
В КОНЦЕ КОНЦОВ

Что мне не хватает?

Ответы на вопрос(1)

Ваш ответ на вопрос