2014-12-03 2 views
4

Я новичок в Symfony2, и я следовал http://symfony.com/doc/current/book/installation.html для установки с помощью Composer ТеперьSymfony Установка дает фатальная ошибка

Это дает мне Фатальная ошибка после некоторого времени:

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 или архив? –

+0

Я использую композитор для установки – user1221098

+0

Бог знает, кто ниспроверг, голосует. Тем более, что у меня такая же проблема :( –

ответ

2

ПОСТАНОВИЛИ:

Полученная же проблема. Удаляется файл composer.phar, установленный снова через curl -s https://getcomposer.org/installer | php - проблема сохраняется

/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, но не работает на моем wamp на окнах 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

I была та же проблема в Ubuntu 14.04 VM, созданной с помощью PuPHPet и Vagrant/VirtualBox.

Я заметил, что когда у меня была такая же проблема, DistributionBundle был сильно устаревшим. Пытаясь обновить его вручную с помощью composer.json (сменив версию на 3.0.12, которая была той, что была доступна в то время, когда у меня возникла проблема), появилась более сложная ошибка, заявив, что я не установил php5-curl.

После обновления конфигурационного файла PuPHPet, который включает в себя модуль cURL для PHP и репродуцирование моей виртуальной машины, Symfony был установлен просто отлично, установив последнюю версию пакета распределения Sensio Distribution, в котором был использован метод defineDirectoryStructure().

1

Только что эта проблема возникла на Debian. Для меня проблема заключалась в том, что сенсация/дистрибутив в последней версии (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 тоже поможет.

Смежные вопросы