Не удалось открыть файл phpUnit - File/Iterator/Autoload.php

Я пытаюсь запустить phpUnit на панели задач plesk на centos.

Я успешно установил phpunit.

Package            Version State
File_Iterator      1.3.1   stable
PHPUnit            3.6.10  stable
PHPUnit_MockObject 1.1.1   stable
PHP_CodeCoverage   1.1.2   stable
PHP_Invoker        1.1.0   stable
PHP_Timer          1.0.2   stable
PHP_TokenStream    1.1.3   stable
Text_Template      1.1.1   stable

однако всякий раз, когда я запускаю команду phpunit из оболочки, я получаю следующую ошибку:

PHP Предупреждение: require_once (File/Iterator/Autoload.php): не удалось открыть stream: нет такого файла или каталога в /usr/share/pear/PHPUnit/Autoload.php в строке 45
PHP Неустранимая ошибка: require_once(): Не удалось открыть окно "Файл/Итератор/Autoload.php" (include_path = '.:') в /usr/share/pear/PHPUnit/Autoload.php в строке 45

Кто-нибудь подскажет, как решить проблему?

Ответ 1

Я попробовал миллиард разных статей, и команды, которые, наконец, исправили эту проблему для меня, были следующими:

sudo pear channel-discover pear.phpunit.de
sudo pear install --alldeps --force phpunit/phpunit

Затем, когда я запустил phpunit, я не получил ошибок и успешно работал.

Ответ 2

Я не уверен, как это переводит для plesk, но проблема в том, что include_path, указанный в вашем файле php.ini, установлен только в текущий каталог. Проверьте, где находится ваш файл php.ini, выполнив следующее из командной строки...

% php --info

... и найдите следующие записи...

Файл конфигурации (php.ini) Путь = > /etc

Загруженный файл конфигурации = > /etc/php.ini

В этом случае отредактируйте /etc/php.ini и найдите путь include_ include. В моем случае мне нужно установить его следующим образом:

include_path = ".:/opt/php-5.3.14/lib/php/pear"

Ответ 3

Ваш путь include должен включать каталог, в котором PEAR устанавливает все эти пакеты. Добавьте /usr/share/pear к вашему пути include в php.ini - возможно, /etc/php5/cli/php.ini.

Ответ 4

В Ubuntu (10.04) я также добавил /usr/share/php в /etc/php5/cli/php.ini.

Ответ 5

В версии 19 Fedora она была решена путем добавления пути /usr/share/pear/ к include_path /etc/php.ini