【发布时间】:2026-02-02 19:35:02
【问题描述】:
我在 Mac OS X 上安装 PHPUnit,但我当前的 PEAR 版本有问题。现有的 SO 问题并不能解决问题。当前的 PEAR 版本列为 1.9.1。 PHPUnit 需要 1.9.4。
[le programmeur]$which pear
/Applications/MAMP/bin/php5.3/bin/pear
[le programmeur]$pear -V
PEAR Version: 1.9.1
PHP Version: 5.3.5
Zend Engine Version: 2.3.0
[le programmeur]$pear config-get php_dir
/Users/rallen8440/pear/share/pear
运行pear install -f pear PEAR 1.9.4 后应该安装了,running pear upgrade pear“表明”我们处于最新版本。
[le programmeur]$/Applications/MAMP/bin/php5.3/bin/pear install -f pear
WARNING: "pear/Console_Getopt" is deprecated in favor of "pear/Console_GetoptPlus"
downloading PEAR-1.9.4.tgz ...
Starting to download PEAR-1.9.4.tgz (296,332 bytes)
.............................................................done: 296,332 bytes
install ok: channel://pear.php.net/PEAR-1.9.4
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"
[le programmeur]$/Applications/MAMP/bin/php5.3/bin/pear -V
PEAR Version: 1.9.1
PHP Version: 5.3.5
Zend Engine Version: 2.3.0
[le programmeur]$pear upgrade pear
pear/pear is already installed and is the same as the released version 1.9.4
upgrade failed
但是,当 pear install phpunit/PHPUnit 运行时,它会说:
[le programmeur]$pear install phpunit/PHPUnit
Did not download optional dependencies: phpunit/PHP_Invoker, use --alldeps to download automatically
phpunit/PHPUnit requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1
phpunit/PHPUnit can optionally use package "phpunit/PHP_Invoker" (version >= 1.1.0)
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed version is 1.9.1
phpunit/Text_Template requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1
phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.3.0)
phpunit/PHP_CodeCoverage requires package "phpunit/Text_Template" (version >= 1.1.1)
phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
phpunit/PHP_Timer requires PEAR Installer (version >= 1.9.2), installed version is 1.9.1
phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1
phpunit/PHPUnit_MockObject requires package "phpunit/Text_Template" (version >= 1.1.1)
phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1
No valid packages found
install failed
[le programmeur]$pear -V
PEAR Version: 1.9.1
PHP Version: 5.3.5
Zend Engine Version: 2.3.0
以前在 /usr/bin/pear 中安装了一个 PEAR,但它不再存在:
[le programmeur]$ls /usr/bin/pear
pear_old peardev
~/.profile PATH 指向/Applications/MAMP/bin/php5.3/bin:
# Mod path
export PATH=/Applications/MAMP/bin/php5.3/bin:$PATH
我不知道我在这里缺少什么。哈!
【问题讨论】:
-
我终于放弃了用 PEAR 尝试它,我下载了 PHPUnit 文件并将它们放在 app/vendor/ 中。