PHPUnit 3.4 のインストールを 3.3 にダウングレードしたいと考えています。私はそれを行う方法がわかりません。
PEAR を使用して Ubuntu にバージョン 3.3 の PHPUnit をインストールするにはどうすればよいですか?
ダウングレード先の正確なバージョン番号を知る必要があります。これを書いている時点で、最新のリリースは 3.3.17 です。これは、適切な PEAR チャネルをチェックすることで確認できます。
その特定のバージョンにダウングレードするには、次の 2 つのコマンドを実行します。
pear uninstall phpunit/PHPUnit
pear install phpunit/PHPUnit-3.3.17
3.6.x リリースから 3.5.15 (最終安定版 3.x リリース) にダウングレードする場合は、アンインストールしてから、いくつかの依存関係を手動で再インストールする必要があることに注意してください。そうしないと、pear は最新バージョンの PHPUnit を強制的にインストールします。
(Dusty Reagan のブログからの元の指示: http://dustyreagan.com/downgrade-phpunit-3-6-to-3-5-15/。元のリンクが何らかの理由で停止した場合に備えて、SO に複製されます。)
sudo pear uninstall phpunit/PHPUnit
sudo pear uninstall phpunit/DbUnit
sudo pear uninstall phpunit/PHP_CodeCoverage
sudo pear uninstall phpunit/File_Iterator
sudo pear uninstall phpunit/PHPUnit_MockObject
sudo pear uninstall phpunit/Text_Template
sudo pear uninstall phpunit/PHP_Timer
sudo pear uninstall phpunit/PHPUnit_Selenium
sudo pear uninstall pear.symfony-project.com/YAML
sudo pear install pear.symfony-project.com/YAML-1.0.2
sudo pear install phpunit/PHPUnit_Selenium-1.0.1
sudo pear install phpunit/Text_Template-1.0.0
sudo pear install phpunit/PHPUnit_MockObject-1.0.3
sudo pear install phpunit/PHP_Timer-1.0.0
sudo pear install phpunit/File_Iterator-1.2.3
sudo pear install phpunit/PHP_CodeCoverage-1.0.2
sudo pear install phpunit/DbUnit-1.0.0
sudo pear install phpunit/PHPUnit-3.5.15
注: PHP_CodeCoverage のチャネルを追加する必要がある場合がありますが、これは PHPUnit 3.6 では必須ではないようです。
sudo pear channel-discover components.ez.no
sudo pear install channel://components.ez.no/ConsoleTools-1.6
エラーが発生Fatal error: Class 'PHP_Token_Stream' not found in /usr/share/pear/PHP/Token/Stream/CachingFactory.php on line 68
した場合は、正しいバージョンの PHP_TokenStream を取得するために、次の順序を使用する必要があります。
pear uninstall phpunit/PHPUnit
pear uninstall phpunit/DbUnit
pear uninstall phpunit/PHP_CodeCoverage
pear uninstall phpunit/PHP_TokenStream
pear uninstall phpunit/File_Iterator
pear uninstall phpunit/PHP_Timer
pear uninstall phpunit/PHPUnit_MockObject
pear uninstall phpunit/Text_Template
pear uninstall phpunit/PHPUnit_Selenium
pear uninstall pear.symfony-project.com/YAML
pear install pear.symfony-project.com/YAML-1.0.2
pear install phpunit/PHPUnit_Selenium-1.0.1
pear install phpunit/Text_Template-1.0.0
pear install phpunit/PHPUnit_MockObject-1.0.3
pear install phpunit/PHP_Timer-1.0.0
pear install phpunit/File_Iterator-1.2.3
pear install phpunit/PHP_TokenStream-1.0.1
pear install phpunit/PHP_CodeCoverage-1.0.2
pear install phpunit/DbUnit-1.0.0
pear install phpunit/PHPUnit-3.5.15
PEARだけでいつでも可能かどうかはわかりません。
以前にパッケージをダウングレードする必要があったとき、古いバージョンはチャネルで利用できなくなりました。ダウングレードしたいパッケージをアンインストールし、古いバージョンをダウンロードして、ダウンロードしたファイルからインストールしました。
3.6.xから3.5.15へのダウングレードに関しては、次の順序で正常に機能します。
3.6のアンインストール
sudo pear uninstall phpunit/PHPUnit_Selenium
sudo pear uninstall phpunit/PHPUnit
sudo pear uninstall phpunit/DbUnit
sudo pear uninstall phpunit/PHP_CodeCoverage
sudo pear uninstall phpunit/PHP_Iterator
sudo pear uninstall phpunit/PHPUnit_MockObject
sudo pear uninstall phpunit/Text_Template
sudo pear uninstall phpunit/PHP_Timer
sudo pear uninstall phpunit/File_Iterator
sudo pear uninstall pear.symfony-project.com/YAML
3.5.15のインストール
sudo pear install pear.symfony-project.com/YAML-1.0.2
sudo pear install phpunit/PHPUnit_Selenium-1.0.1
sudo pear install phpunit/PHP_Timer-1.0.0
sudo pear install phpunit/Text_Template-1.0.0
sudo pear install phpunit/PHPUnit_MockObject-1.0.3
sudo pear install phpunit/File_Iterator-1.2.3
sudo pear install phpunit/PHP_CodeCoverage-1.0.2
sudo pear install phpunit/DbUnit-1.0.0
sudo pear install phpunit/PHPUnit-3.5.15
私はここで解決策を見つけました。