错误“未找到类'Twig_SimpleFunction'".升级到Symfony 2.2之后 [英] Error "Class 'Twig_SimpleFunction' not found" after upgrade to Symfony 2.2

查看:145
本文介绍了错误“未找到类'Twig_SimpleFunction'".升级到Symfony 2.2之后的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近将Symfony的版本从2.1更新到2.2,现在出现错误:

I recently updated Symfony from 2.1 to 2.2 and now I'm getting error:

错误:在供应商/symfony/symfony/src/Symfony/Bundle/SecurityBundle/Twig/Extension/LogoutUrlExtension.php第41行中找不到类'Twig_SimpleFunction'

Error: Class 'Twig_SimpleFunction' not found in vendor/symfony/symfony/src/Symfony/Bundle/SecurityBundle/Twig/Extension/LogoutUrlExtension.php line 41

我的composer.json:

My composer.json:

...
"require": {
    "php": ">=5.4",
    "symfony/symfony": "2.2.*",
    "twig/twig": "1.11.x",
    "twig/extensions": "1.0.x-dev",
    "noetix/easy-csv": "dev-master",
    "symfony/assetic-bundle": "2.*",
    "symfony/swiftmailer-bundle": "2.*",
    "symfony/monolog-bundle": "2.*",
    "sensio/distribution-bundle": "2.*",
    "sensio/framework-extra-bundle": "2.*",
    "sensio/generator-bundle": "2.*",
    "jms/security-extra-bundle": "1.4.*",
    "jms/di-extra-bundle": "1.3.*",
    "jms/serializer": "0.12.*",
    "jms/serializer-bundle" : "0.12.*@dev",
    "jms/metadata" : "1.3.*",
    "friendsofsymfony/user-bundle": "patch-1-dev",
    "friendsofsymfony/jsrouting-bundle": "1.2.*",
    "propel/propel1": ">=1.6.7",
    "propel/propel-bundle": "1.2.x-dev",
    "willdurand/propel-typehintable-behavior": "dev-master",
    "pagerfanta/pagerfanta": "1.0.x-dev",
    "white-october/pagerfanta-bundle": "dev-master",
    "knplabs/knp-menu-bundle": "dev-master",
    "knplabs/knp-menu": "2.0.x-dev",
    "exercise/elastica-bundle": "dev-master",
    "gregwar/captcha-bundle": "dev-master",
    "nelmio/api-doc-bundle": "2.1.*",
    "fr3d/ldap-bundle": "2.0.*@dev",
    "conjecto/easyrdf-bundle": "dev-master"
},
...

Twig弃用的功能页面说:从Twig 1.x,请使用"Twig_SimpleFunction".我有1.11,所以我做错了我不明白.

Twig deprecated features page says: "As of Twig 1.x, use Twig_SimpleFunction". I have 1.11, so I don't get it what I'm doing wrong.

推荐答案

找到了它.我怀疑问题出在无效的依赖项中.我下载了Symfony2.2.11,并相应地更改了composer.json(注意,不再引用twig,并更改了一些symfony/*和sensio/*依赖项):

Found it. The problem was in invalid dependencies as I suspected. I downloaded Symfony2.2.11 and changed my composer.json accordingly (notice no reference to twig anymore, and changed some symfony/* and sensio/* dependencies):

"require": {
    "php": ">=5.3.3",
    "symfony/symfony": "2.2.*",
    "twig/extensions": "1.0.*",
    "noetix/easy-csv": "dev-master",
    "symfony/assetic-bundle": "2.1.*",
    "symfony/swiftmailer-bundle": "2.2.*",
    "symfony/monolog-bundle": "2.2.*",
    "sensio/distribution-bundle": "2.2.*",
    "sensio/framework-extra-bundle": "2.2.*",
    "sensio/generator-bundle": "2.2.*",
    "jms/security-extra-bundle": "1.4.*",
    "jms/di-extra-bundle": "1.3.*",
    "jms/serializer": "0.12.*",
    "jms/serializer-bundle" : "0.12.*@dev",
    "jms/metadata" : "1.3.*",
    "friendsofsymfony/user-bundle": "patch-1-dev",
    "friendsofsymfony/jsrouting-bundle": "1.2.*",
    "propel/propel1": ">=1.6.7",
    "propel/propel-bundle": "1.2.x-dev",
    "willdurand/propel-typehintable-behavior": "dev-master",
    "pagerfanta/pagerfanta": "1.0.x-dev",
    "white-october/pagerfanta-bundle": "dev-master",
    "knplabs/knp-menu-bundle": "dev-master",
    "knplabs/knp-menu": "2.0.x-dev",
    "exercise/elastica-bundle": "dev-master",
    "gregwar/captcha-bundle": "dev-master",
    "nelmio/api-doc-bundle": "2.1.*",
    "fr3d/ldap-bundle": "2.0.*@dev",
    "conjecto/easyrdf-bundle": "dev-master"
},

此安装的树枝1.15正常运行. 手册页出现错误-Twig_SimpleFunction出现在> 1.11和< = 1.15之间,而不是1.x.

This installed twig 1.15 and everything works. The manual page has error - Twig_SimpleFunction appears somewhere between >1.11 and <=1.15, not in 1.x.

这篇关于错误“未找到类'Twig_SimpleFunction'".升级到Symfony 2.2之后的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆