Symfony 2.7 - 未加载/注册服务

问题描述 投票:0回答:1

致力于Symfony 2.7 -

我在自定义包中创建了一个新服务(ipad.registerchecksum),现在我尝试在另一个自定义包中使用它作为另一个服务(ipad.download_history)中的参数,但是我收到以下错误:

服务“ipad.download_history”依赖于不存在的服务“ipad.registerchecksum”。

创建我的服务:

<?php

namespace MyCompany\MyBundle2\Services;

class Registerchecksum
{

    public function sayHello()
    {
        return "Hello";
    }

}

?>

将我的课程注册为服务:

#MyCompany\MyBundle2\Resources\Config\services.yml

services:
    ipad.registerchecksum:
        class: MyCompany\MyBundle2\Services\Registerchecksum

加载我的services.yml:

<?php

namespace MyCompany\MyBundle2\DependencyInjection;

use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
use Symfony\Component\DependencyInjection\Loader;


class MyBundle2Extension extends Extension
{

    public function load(array $configs, ContainerBuilder $container)
    {
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
        $loader->load('datagrid/datagrids.yml');
        $loader->load('navigation.yml');
        $loader->load('services.yml');
    }

    // Please note : navigation.yml and datagrid/datagrids.yml are well loaded and work perfectly

}
?>

..服务似乎没有注册。

  • 如果我测试“/ app / console container:debug”,它就不会出现。
  • 我已经清理了缓存(dev&prod),也就是热身缓存。
symfony service symfony-2.7
1个回答
1
投票

$ rm -rf app / cache / *

#MyCompany\MyBundle2\Resources\Config\services.yml

services:
    ipad.registerchecksum:
        class: MyCompany\MyBundle2\Services\Registerchecksum

    ipad.download_history:
        class: Your Service
        arguments: ["@ipad.registerchecksum"]
© www.soinside.com 2019 - 2024. All rights reserved.