2012-02-17 220 views
1

这似乎是早期版本的PEAR已知的问题,不幸的是这些解决方案对我而言并不适用。无法安装PHPUnit和PEAR 1.9.1

我的设置:Win7,32位。 PHP目录:c:\ Program Files \ PHP。 所有命令都从具有管理权限的控制台运行。

我已经安装了最新版本的PEAR(2012.02.17)版本。使用go-pear.phar为1.9.1。 然后我试图通过运行梨安装pear.phpunit.de/PHPUnit来安装PHPUnit,得到了以下错误:运行梨梨的升级,这将导致

phpunit/PHPUnit requires PEAR Installer (version >= 1.9.4), installed version is 
1.9.1 
phpunit/PHPUnit requires package "channel://pear.symfony-project.com/YAML" (vers 
ion >= 1.0.2) 
phpunit/PHPUnit can optionally use package "phpunit/PHP_Invoker" (version >= 1.1 
.0) 
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed vers 
ion is 1.9.1 
phpunit/Text_Template requires PEAR Installer (version >= 1.9.4), installed vers 
ion is 1.9.1 
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.4), installed v 
ersion 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_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 ve 
rsion is 1.9.1 
No valid packages found 
install failed 

我试图升级到PEAR 1.9.4在消息

pear/pear is already installed and is the same as the released version 1.9.4 
upgrade failed 

强制使用-f重点工作的升级,在文件名与1.9.4包下载并安装全成报告,但梨-V仍然返回1.9.1。 PHPUnit安装仍然失败。请帮忙,我正在失去理智。

+0

听起来像PEAR运行不在安装的位置。因此,PEAR 1.9.1运行,在磁盘上看到1.9.4,用1.9.4覆盖它,但它对下次运行的内容没有影响。发布'pear config-show'和'echo%PATH%'的结果。 – 2012-02-17 23:04:59

+0

谢谢大卫,问题确实与PATH有关。我在c:\ PHP中安装了较旧的1.9.2版本的PEAR,它位于PATH中。一旦删除,PHPUnit安装成功完成。 – 2012-02-20 09:47:28

+0

请参阅http://stackoverflow.com/questions/6596316/cant-install-phpunit-via-pear-requires-pear-installer-1-9-2-cant-upgrade/6596669#6596669 – cweiske 2012-03-01 21:07:07

回答

0

PEAR的旧版本位于PATH中引用的c:\ PHP中。 PEAR首先看到了这个版本,并忽略了更新的版本。在安装PHPUnit之前,必须从PATH变量中删除对旧版本文件夹的引用。 我感谢David Harkness提供的线索。

0

你确定你正在使用超级用户权限运行cmd/powershell吗?它发生在我身上,如果我不包成功下载,但没有安装。

+0

是的,我跑了进入特权问题,并再次启动控制台“以管理员身份”。不应该首先将PHP安装到Program文件中,但现在已经太晚了。我正在使用常规的cmd控制台,并且您提到了powershell,它对我的​​情况有影响吗? – 2012-02-17 16:56:55