2014-12-03 64 views
4

我是新来的Symfony2的,我是用作曲现在Symfony的安装提供了致命的错误

它给了我一段时间后,一个致命错误以下http://symfony.com/doc/current/book/installation.html安装:

monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar)

Writing lock file

Generating autoload files

Fatal error: Call to undefined method Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::defineDirectoryStructure() in /Users/app/SymfonyStandard/RootPackageInstallSubscriber.php on line 28

+0

你是如何设置Symfony的?使用GIT,Composer或档案? – 2014-12-03 16:05:29

+0

我正在使用作曲家来安装 – user1221098 2014-12-03 16:11:40

+0

天知道谁降低了投票率,有投票权。特别是因为我有相同的问题:( – 2014-12-03 22:25:20

回答

2

解决:

得到了同样的问题。通过curl -s https://getcomposer.org/installer | php删除的文件composer.phar,再安装 - 问题仍然存在

/path/to/webroot/project/vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/ScriptHandler.php文件没有方法defineDirectoryStructure()在它

symfony/framework-standard-edition (v2.6.1)

PHP 5.5.9-1ubuntu4.5 (cli) (built: Oct 29 2014 11:59:10)

问题就在这里 sensio/distribution-bundle (v3.0.11)

谢谢@hap,这有帮助 sudo apt-get install php5-curl

0

也得到了同样的问题...在debian distrib上工作,但不能在我的Windows 7上运行!

所以尝试更新我的WAMP,让PHP5.5,重新作曲使用这个PHP,仍然没有工作..

然后我试图启动控制台管理员模式,并启动:

“作曲家创建项目symfony /框架标准版sfproject /”

并猜测什么....终于奏效了!有管理员权限...只要试一试;)

0

我有同样的问题。我刚刚在composer.json中添加了字符串“symfony/symfony”:“2.3。*”,它为我工作。

此外,我删除了我的composer.phar和composer.lock文件。

问题是,如果你在你的项目symfony 2.3中安装了v 2.7的依赖关系。

0

我把这个错误从安装到一个新的流浪虚拟机,它似乎最近做的事情已经打破了这个,因为我上周安装了一个2.6.0版本,而测试,现在它不起作用。

经过一番反复试验,似乎2.6x和2.5x分支都受到影响,不会安装,但2.3x和2.4x的安装没有错误。

柜面有人不知道如何安装特定的版本,只是将它加入到作曲家命令的结束,即

composer create-project symfony/framework-standard-edition . 2.4.x 

VM:Ubuntu的14.01/PHP 5.5.9

0

我在使用PuPHPet和Vagrant/VirtualBox设置的Ubuntu 14.04 VM中也遇到同样的问题。

我注意到,当我遇到同样的问题时,DistributionBundle严重过时了。尝试从composer.json手动升级它(将版本更改为3.0.12,这是我遇到问题时可用的las版本)会产生更详细的错误,说明我没有安装php5-curl。

在更新PuPHPet配置文件以包含PHP的cURL模块并重新配置我的虚拟机后,Symfony安装得很好,安装了包含defineDirectoryStructure()方法的最新版本的Sensio Distribution Bundle。

1

刚刚在Debian上有这个问题。对我来说,问题是sensio/distribution-bundle在其最新版本(v3.0.12,引入defineDirectoryStructure函数的那个​​版本)中需要cURL PHP扩展,它没有安装,所以它安装了v3.0.11(它不包含所需的方法)。

安装php5-curl后,Composer finaly安装了最新版本的sensio/distribution-bundle,一切正常。

3

@hap绝对正确的在Debian/Ubuntu的

sudo apt-get install php5-curl 

是解决这个问题。我认为在另一个平台上php5-curl也会有所帮助。

相关问题