在我的Symfony2项目上工作时,我(似乎)在转到任何页面时都随机收到错误InvalidArgumentException: The service definition "templating.helpers.assets" does not exist.。我已经尝试过回到较早的提交,但这并没有改变任何东西。因此,这似乎并不是我自己的任何源代码。我也不能composer update。我尝试删除缓存,供应商目录和composer.lock文件,但仍然收到此错误:



有任何想法吗?

最佳答案

FYI服务templating.helper.assets存在

php app/console container:debug  templating.helper.assets
[container] Information for service templating.helper.assets
Service Id       templating.helper.assets
Class            Symfony\Component\Templating\Helper\CoreAssetsHelper
Tags
    - templating.helper              (alias: assets)
Scope            request
Public           yes
Synthetic        no
Lazy             no
Synchronized     no
Abstract         no

它是由Symfony\Bundle\FrameworkBundle\FrameworkBundle()创建的
并在Resources\config\templating_php.xml中定义

    <service id="templating.helper.assets" class="%templating.helper.assets.class%">
        <tag name="templating.helper" alias="assets" />
        <argument /> <!-- default package -->
        <argument type="collection" /> <!-- named packages -->
    </service>

因此,将此捆绑包添加到您的appKernel.php
public function registerBundles()
{
    $bundles = array(
        //Standard
        new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
        //others bundles

关于php - Symfony2 : InvalidArgumentException: The service definition "templating.helpers.assets" does not exist,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26239458/

10-09 21:56