致力于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
}
?>
..服务似乎没有注册。
$ 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"]