Не удалось установить последнюю версию phpUnit в Ubuntu 10.04
Я пытаюсь установить PHPUnit в Ubuntu 10.04, но получаю эти сообщения об ошибках
sudo pear install -a pear.phpunit.de/PHPUnit
Duplicate package channel://pear.phpunit.de/File_Iterator-1.3.3 found
Duplicate package channel://pear.phpunit.de/File_Iterator-1.3.2 found
install failed
Я попытался переустановить PEAR, обновив его; обновил канал PEAR и PHPUnit; очистил кеш PEAR, но все равно не повезло, я все равно получаю ту же ошибку.
Есть ли у кого-то такая же проблема и знаете, как ее решить?
Спасибо.
Ответы
Ответ 1
Да, отметил Декс, но подумал, что я тоже поставил его в качестве ответа.
Не уверен, зачем вам нужно sudo (взятые части из ответа edorian), это то, что я сделал.
pear clear-cache
pear install phpunit/File_Iterator
pear install phpunit/Text_Template
pear install --force --alldeps pear.phpunit.de/PHPUnit
в основном, файловый итератор и текстовый шаблон были двумя, на которых я получал дубликаты, поэтому это те, которые мне приходилось устанавливать индивидуально, чтобы они не терпели неудачу при установке phpunit.
Ответ 2
У меня также была эта проблема, потому что работающий сервер все еще находится на PHP 5.2, а установка PHPUnit непосредственно из PEAR собирала неправильные версии некоторых пакетов, которые несовместимы с PHP 5.2.
Чтобы исправить установку:
1) Я сначала удалил все пакеты из канала phpunit.
2) Затем я установил правильные версии конфликтующих пакетов:
pear install pear.phpunit.de/File_Iterator-1.3.2
pear install pear.phpunit.de/Text_Template-1.1.2
pear install pear.phpunit.de/PHP_Timer-1.0.2
3) Затем я мог установить phpunit:
[[email protected] ~]# pear install pear.phpunit.de/phpunit
Did not download optional dependencies: pear.phpunit.de/PHP_Invoker, use --alldeps to download automatically
phpunit/PHPUnit can optionally use package "pear.phpunit.de/PHP_Invoker" (version >= 1.1.0)
downloading PHPUnit-3.6.12.tgz ...
Starting to download PHPUnit-3.6.12.tgz (120,240 bytes)
..........................done: 120,240 bytes
downloading PHP_CodeCoverage-1.1.4.tgz ...
Starting to download PHP_CodeCoverage-1.1.4.tgz (132,781 bytes)
...done: 132,781 bytes
downloading PHPUnit_MockObject-1.1.1.tgz ...
Starting to download PHPUnit_MockObject-1.1.1.tgz (19,910 bytes)
...done: 19,910 bytes
downloading PHP_TokenStream-1.1.4.tgz ...
Starting to download PHP_TokenStream-1.1.4.tgz (9,877 bytes)
...done: 9,877 bytes
install ok: channel://pear.phpunit.de/PHPUnit_MockObject-1.1.1
install ok: channel://pear.phpunit.de/PHP_TokenStream-1.1.4
install ok: channel://pear.phpunit.de/PHP_CodeCoverage-1.1.4
install ok: channel://pear.phpunit.de/PHPUnit-3.6.12**
Ответ 3
Я столкнулся с той же проблемой с Ubuntu-10.04. Версия PHPUnit, совместимая с PHP 5.3.2, - 3.6. Это то, что создает проблему. Я исправил его, установив точные версии всех зависимостей. Ниже приведены пакеты, которые нам нужны:
- PHPUnit
- File_Iterator-1.3.2
- PHP_Timer-1.0.3
- PHP_TokenStream-1.1.4
- PHPUnit_MockObject-1.1.1
- Text_Template-1.1.2
- PHP_CodeCoverage
Подробные инструкции здесь
Ответ 4
Недавно была проблема с упаковкой, которая привела к этой ошибке:
Чтобы исправить это, попробуйте:
sudo pear install --force --alldeps pear.phpunit.de/PHPUnit
и вы, возможно, уже сделали это, но оставите его для других:
sudo pear clear-cache
(как только он будет создан, на данный момент он имеет проблемы).
Проблема с ссылкой, которая обсуждалась в bugtracker:
https://github.com/sebastianbergmann/phpunit/issues/687
и ошибка в груше:
https://pear.php.net/bugs/bug.php?id=19650