如何通过PEAR安装旧版本的PHPUnit?

And*_*rew 43 php pear phpunit

我想将我的PHPUnit 3.4安装降级到3.3.我只是不确定该怎么做.

如何使用PEAR在Ubuntu上安装3.3版的PHPUnit?

eth*_*ros 51

您需要知道要降级到的确切版本号.在撰写本文时,您所关注的最后一个版本是3.3.17,可以通过检查相应的PEAR频道找到它.

要降级到该特定版本,请执行以下两个命令:

  • pear uninstall phpunit/PHPUnit
  • pear install phpunit/PHPUnit-3.3.17

  • 我收到消息:'没有可用于包的发行版"pear.phpunit.de/PHPUnit"',该怎么办? (3认同)

Jen*_*gar 22

请注意,如果您希望从3.6.x版本降级到3.5.15(最终稳定3.x版本),则需要卸载,然后手动重新安装多个依赖项.否则pear会强制安装最新版本的PHPUnit.

这是如何做:

(来自Dusty Reagan博客的原始说明:http://dustyreagan.com/downgrade-phpunit-3-6-to-3-5-15/.如果原始链接由于某种原因死亡,则复制到SO.)

首先,您需要卸载PHPUnit 3.6及其所有依赖项.

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
Run Code Online (Sandbox Code Playgroud)

接下来按顺序安装每个依赖项的这些特定版本,最后安装PHPUnit-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/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
Run Code Online (Sandbox Code Playgroud)

注意:您可能需要为PHP_CodeCoverage添加通道,这对于PHPUnit 3.6来说似乎不是必须的

sudo pear channel-discover components.ez.no
sudo pear install channel://components.ez.no/ConsoleTools-1.6
Run Code Online (Sandbox Code Playgroud)


ton*_*lex 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
Run Code Online (Sandbox Code Playgroud)