Windows通过PEAR安装PHPUnit-通过PEAR安装PHPUnit
【腾讯云】亏本大甩卖,服务器4核16G 1年370元(带宽12M,系统盘120GB SSD盘,月流量2000GB)!!!!!!
云产品 配置 价格
服务器 1核2G,带宽5M,系统盘50GB SSD盘,月流量500GB 38元/年
MySQL 1核1G 19元/年
服务器 16核32G,带宽18M,系统盘250GB SSD盘,月流量5000GB 1197元/年
点我进入腾讯云,查看更多详情

When I run:

peardev install phpunit/PHPUnit

I get the following:

No releases available for package "pear.phpunit.de/PHPUnit"
install failed

I have run the following:

pear channel-discover pear.phpunit.de
Channel "pear.phpunit.de" is already initialized

and

pear install --alldeps phpunit/PHPUnit
No releases available for package "pear.phpunit.de/PHPUnit"
install failed

and

pear remote-list -c phpunit
CHANNEL PHPUNIT AVAILABLE PACKAGES:
===================================
PACKAGE            VERSION
DbUnit             1.0.2
File_Iterator      1.2.6
Object_Freezer     1.0.0
PHPUnit            3.5.14
PHPUnit_MockObject 1.0.9
PHPUnit_Selenium   1.0.3
PHP_CodeBrowser    1.0.0
PHP_CodeCoverage   1.0.4
PHP_Timer          1.0.0
PHP_TokenStream    1.0.1
Text_Template      1.1.0
bytekit            1.1.1
phpUnderControl    0.5.0
phpcpd             1.3.2
phpdcd             0.9.2
phploc             1.6.1
ppw                1.0.4
test_helpers       1.1.0

and

pear upgrade pear
No releases available for package "pear.php.net/pear"
upgrade failed

Please help I am tearing my hair out here.

UPDATED

C:\Program Files\PHP>pear channel-discover pear.phpunit.de
Channel "pear.phpunit.de" is already initialized

C:\Program Files\PHP>pear channel-discover components.ez.no
Channel "components.ez.no" is already initialized

C:\Program Files\PHP>pear channel-discover pear.symfony-project.com
Channel "pear.symfony-project.com" is already initialized

C:\Program Files\PHP>pear install phpunit/PHPUnit
No releases available for package "pear.phpunit.de/PHPUnit"
install failed

UPDATE 2

C:\Program Files\PHP>pear update-channels
Updating channel "components.ez.no"
Channel "components.ez.no" is up to date
Updating channel "doc.php.net"
Channel "doc.php.net" is up to date
Updating channel "pear.php.net"
Channel "pear.php.net" is up to date
Updating channel "pear.phpunit.de"
Channel "pear.phpunit.de" is up to date
Updating channel "pear.symfony-project.com"
Channel "pear.symfony-project.com" is up to date
Updating channel "pecl.php.net"
Channel "pecl.php.net" is up to date

Update 3

ran

C:\Program Files\PHP>pear clear-cache
reading directory C:\Users\stephen\AppData\Local\Temp\pear\cache
136 cache entries cleared

C:\Program Files\PHP>pear install -a -f phpunit/PHPUnit
phpunit/PHPUnit can optionally use PHP extension "dbus"
phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2
.0.5)
downloading PHPUnit-3.5.14.tgz ...
Starting to download PHPUnit-3.5.14.tgz (118,697 bytes)
..........................done: 118,697 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\PHPUnit-3.
5.14.tgz" Unable to create directory 'C:/Program/tmpF4D2.tmp'
Unable to create path for C:/Program/tmpF4D2.tmp/package.xml
Download of "phpunit/PHPUnit" succeeded, but it is not a valid package archive
Error: cannot download "phpunit/PHPUnit"
downloading DbUnit-1.0.2.tgz ...
Starting to download DbUnit-1.0.2.tgz (39,231 bytes)
...done: 39,231 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\DbUnit-1.0
.2.tgz" Unable to create directory 'C:/Program/tmpF64A.tmp'
Unable to create path for C:/Program/tmpF64A.tmp/package.xml
Download of "phpunit/DbUnit" succeeded, but it is not a valid package archive
Error: cannot download "phpunit/DbUnit"
downloading File_Iterator-1.2.6.tgz ...
Starting to download File_Iterator-1.2.6.tgz (3,439 bytes)
...done: 3,439 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\File_Itera
tor-1.2.6.tgz" Unable to create directory 'C:/Program/tmpF6E7.tmp'
Unable to create path for C:/Program/tmpF6E7.tmp/package.xml
Download of "phpunit/File_Iterator" succeeded, but it is not a valid package arc
hive
Error: cannot download "phpunit/File_Iterator"
downloading PHP_CodeCoverage-1.0.4.tgz ...
Starting to download PHP_CodeCoverage-1.0.4.tgz (115,029 bytes)
...done: 115,029 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\PHP_CodeCo
verage-1.0.4.tgz" Unable to create directory 'C:/Program/tmpF83F.tmp'
Unable to create path for C:/Program/tmpF83F.tmp/package.xml
Download of "phpunit/PHP_CodeCoverage" succeeded, but it is not a valid package
archive
Error: cannot download "phpunit/PHP_CodeCoverage"
downloading PHPUnit_MockObject-1.0.9.tgz ...
Starting to download PHPUnit_MockObject-1.0.9.tgz (18,414 bytes)
...done: 18,414 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\PHPUnit_Mo
ckObject-1.0.9.tgz" Unable to create directory 'C:/Program/tmpF939.tmp'
Unable to create path for C:/Program/tmpF939.tmp/package.xml
Download of "phpunit/PHPUnit_MockObject" succeeded, but it is not a valid packag
e archive
Error: cannot download "phpunit/PHPUnit_MockObject"
downloading PHPUnit_Selenium-1.0.3.tgz ...
Starting to download PHPUnit_Selenium-1.0.3.tgz (16,587 bytes)
...done: 16,587 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\PHPUnit_Se
lenium-1.0.3.tgz" Unable to create directory 'C:/Program/tmpF9F6.tmp'
Unable to create path for C:/Program/tmpF9F6.tmp/package.xml
Download of "phpunit/PHPUnit_Selenium" succeeded, but it is not a valid package
archive
Error: cannot download "phpunit/PHPUnit_Selenium"
downloading YAML-1.0.5.tgz ...
Starting to download YAML-1.0.5.tgz (9,966 bytes)
...done: 9,966 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\YAML-1.0.5
.tgz" Unable to create directory 'C:/Program/tmpFA83.tmp'
Unable to create path for C:/Program/tmpFA83.tmp/package.xml
Download of "symfony/YAML" succeeded, but it is not a valid package archive
Error: cannot download "symfony/YAML"
downloading PHP_TokenStream-1.0.1.tgz ...
Starting to download PHP_TokenStream-1.0.1.tgz (7,250 bytes)
...done: 7,250 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\PHP_TokenS
tream-1.0.1.tgz" Unable to create directory 'C:/Program/tmpFB10.tmp'
Unable to create path for C:/Program/tmpFB10.tmp/package.xml
Download of "phpunit/PHP_TokenStream" succeeded, but it is not a valid package a
rchive
Error: cannot download "phpunit/PHP_TokenStream"
downloading ConsoleTools-1.6.1.tgz ...
Starting to download ConsoleTools-1.6.1.tgz (869,994 bytes)
...done: 869,994 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\ConsoleToo
ls-1.6.1.tgz" Unable to create directory 'C:/Program/tmp9D.tmp'
Unable to create path for C:/Program/tmp9D.tmp/package.xml
Download of "ezc/ConsoleTools" succeeded, but it is not a valid package archive
Error: cannot download "ezc/ConsoleTools"
downloading Base-1.8.tgz ...
Starting to download Base-1.8.tgz (236,357 bytes)
...done: 236,357 bytes
could not extract the package.xml file from "C:\Program Files\PHP\tmp\Base-1.8.t
gz" Unable to create directory 'C:/Program/tmp36C.tmp'
Unable to create path for C:/Program/tmp36C.tmp/package.xml
Download of "ezc/Base" succeeded, but it is not a valid package archive
Error: cannot download "ezc/Base"
Download failed
install failed

Update 4

Installed PHP at c:\PHP

Ran the above steps and I now get:

C:\PHP>peardev install phpunit/PHPUnit
phpunit/PHPUnit requires PEAR Installer (version >= 1.9.2), installed version is
 1.9.0
phpunit/PHPUnit can optionally use PHP extension "dbus"
phpunit/DbUnit requires PEAR Installer (version >= 1.9.2), installed version is
1.9.0
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed vers
ion is 1.9.0
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.1), installed v
ersion is 1.9.0
phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.
2.2)
phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2
.0.5)
phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.2), installed
 version is 1.9.0
phpunit/PHPUnit_Selenium requires PEAR Installer (version >= 1.9.2), installed v
ersion is 1.9.0
phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.1), installed ve
rsion is 1.9.0
No valid packages found
install failed

C:\PHP>pear upgrade pear
pear/pear is already installed and is the same as the released version 1.9.3
upgrade failed

Update 5

C:\PHP>pear upgrade pear
pear/pear is already installed and is the same as the released version 1.9.3
upgrade failed

C:\PHP>pear -V
PEAR Version: 1.9.0
PHP Version: 5.2.17
Zend Engine Version: 2.2.0

Pear upgrade pear thinks I am 1.9.3 but pear says it is version 1.9.0

#0

I'm a really newbie but hope to be of any help.

I just succeeded installing PHPUnit a moment ago.

My env. is Wamp2.1.

I don't know exactly how this works but it worked for me, so try this.

pear clear-cache then,

pear install -a -f phpunit/PHPUnit

Somewhere in the failing message, I saw something about cache so I used clear-cache.

It did some trick in installing process, I guess.

Good luck!

#1

From the manual page

pear channel-discover pear.phpunit.de
pear channel-discover components.ez.no
pear channel-discover pear.symfony-project.com

pear install phpunit/PHPUnit

Make sure you have the two extra channels that are required.

Edit:

Try following this advice: pear update-channels

#2

could not extract the package.xml file from "C:\Program Files\PHP\tmp\YAML-1.0.5
.tgz" Unable to create directory 'C:/Program/tmpFA83.tmp'
Unable to create path for C:/Program/tmpFA83.tmp/package.xml

This is a bug in pear installer. It can't deal with the SPACE in your path and tries to read the wrong files. Installing your php in a folder without a space is the only 'fix' i know about :/


Update 5:

pear install --force --alldeps pear/pear

do all channel updates it asks for

pear install --force --alldeps phpunit/PHPUnit

if asked for channel updates, do those and repeat

#3

if the Pear command didn't work try this:

First off I'm assuming xampp is installed to C:\xampp

  1. Open a command prompt and go to C:\xampp\php
  2. Type "pear update-channels" (updates channel definitions)
  3. Type "pear upgrade" (upgrades all existing packages and pear)
  4. Type "pear channel-discover components.ez.no" (this is needed for PHPUnit)
  5. Type "pear channel-discover pear.symfony-project.com" (also needed by PHPUnit)
  6. Type "pear channel-discover pear.phpunit.de" (This IS phpunit)
  7. Type "pear install --alldeps phpunit/PHPUnit" (installs PHPUnit and all dependencies)

#4

make sure you're running command prompt as administrator and follow this

pear channel-discover pear.phpunit.de
pear channel-discover components.ez.no
pear channel-discover pear.symfony-project.com

pear install phpunit/PHPUnit

#5

You have several PEAR versions installed and are executing the wrong one. See Pear on windows displaying different version numbers for how to fix it.

推荐文章

如何在不干扰浮动DIV的情况下使换行文本消失?

如何在不干扰浮动DIV的情况下使换行文本消失?

推荐文章

html:通过多个按钮构造链接

html:通过多个按钮构造链接

推荐文章

架构:在不污染pojo的情况下操作模型的最佳实践?而且不用到处重复锅炉板的代码

架构:在不污染pojo的情况下操作模型的最佳实践?而且不用到处重复锅炉板的代码

推荐文章

Guid.NewGuid.toStringJavascript错误

Guid.NewGuid.toStringJavascript错误

推荐文章

使用restlet上载文件

使用restlet上载文件

推荐文章

解析javascript中的codeigniter视图

解析javascript中的codeigniter视图

推荐文章

请参阅svn中从-上次更新到当前工作副本的更改

请参阅svn中从-上次更新到当前工作副本的更改

推荐文章

Silverlight中的本地化,需要XAML中的多个绑定

Silverlight中的本地化,需要XAML中的多个绑定

推荐文章

基于控件的安全性,不能从treeview中删除数据库条目,从windows-forms-application中的基于控件的安全性获取代码

基于控件的安全性,不能从treeview中删除数据库条目,从windows-forms-application中的基于控件的安全性获取代码

推荐文章

如何找到在浏览器中禁用JavaScript的用户数?

如何找到在浏览器中禁用JavaScript的用户数?

推荐文章

多选分段控制

多选分段控制

推荐文章

静态收集和asp.net

静态收集和asp.net

推荐文章

使用jQuery更改除当前click之外的所有类的src

使用jQuery更改除当前click之外的所有类的src

推荐文章

子网中的路由表项

子网中的路由表项

推荐文章

nsicokiemanager2程序缺少符号

nsicokiemanager2程序缺少符号

推荐文章

在表单提交时刷新div内容(ajax)

在表单提交时刷新div内容(ajax)