使用命令:c:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare>php app/console debug:container -vv
我收到错误:
[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException]
The service "makerlabs.templating.helper.pager" has a dependency on a non-existent service "templating.engine.php".
我正在遵循这个例子: http://sourceforge.net/p/p5chi-xshare/wiki/Lesson%202:%20Project%20and%20Data%20base%20structure/
文件“C:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare\src\MakerLabs\PagerBundle\Resources\config\services.xml”包含以下行:
<service id="makerlabs.templating.helper.pager" class="%makerlabs.templating.helper.pager.class%">
<tag name="templating.helper" alias="pager" />
<argument type="service" id="templating.engine.php" />
<argument type="service" id="router" />
文件“C:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare\vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Resources\config\templated_php.xml” 有几行,其中定义了此服务:
<services>
<service id="templating.engine.php" class="%templating.engine.php.class%" public="false">
<argument type="service" id="templating.name_parser" />
<argument type="service" id="service_container" />
<argument type="service" id="templating.loader" />
<argument type="service" id="templating.globals" />
<call method="setCharset"><argument>%kernel.charset%</argument></call>
</service>
因此我不明白,为什么 symfony2 提示找不到服务?如何纠正这个错误?
我已经删除了 Bundlemakerlabs,因为出现错误,我无法列出服务。比我用命令列出的服务: c:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare>php 应用程序/控制台调试:容器> “C:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare\out.txt”
列出的服务中不存在服务“templated.engine.php”。如何加载呢?现有服务:
templating Symfony\Bundle\TwigBundle\TwigEngine
templating.filename_parser Symfony\Bundle\FrameworkBundle\Templating\TemplateFilenameParser
templating.helper.assets Symfony\Bundle\FrameworkBundle\Templating\Helper\AssetsHelper
templating.helper.logout_url Symfony\Bundle\SecurityBundle\Templating\Helper\LogoutUrlHelper
templating.helper.router Symfony\Bundle\FrameworkBundle\Templating\Helper\RouterHelper
templating.helper.security Symfony\Bundle\SecurityBundle\Templating\Helper\SecurityHelper
templating.loader Symfony\Bundle\FrameworkBundle\Templating\Loader\FilesystemLoader
templating.name_parser Symfony\Bundle\FrameworkBundle\Templating\TemplateNameParser
test.client
最佳答案
根据“qooplmao”的解决方案是添加“php” C:\Bitnami\wampstack-5.5.30-0\sym_prog\todoapp\app\config\config.yml
framework:
...
templating:
engines: ['twig', 'php']
它有效。错误没有显示出来。但如果尝试列出服务: c:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare>php 应用程序/控制台调试:容器> “C:\Bitnami\wampstack-5.5.30-0\sym_prog\xshare\out.txt”
服务“templated.engine.php”未列出。
关于php - Symfony 2,ServiceNotFoundException,不存在的服务 "templating.engine.php",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33843765/