如何使用PEAR安装程序完全删除PHPUnit?

2022-08-30 21:15:47

几天前,我使用PEAR安装程序安装了PHPUnit(我还安装了Selenium RC以用于PHP目的的测试)。现在我想卸载它(也删除所有相关的文件夹和文件)

我运行了以下命令:

pear uninstall phpunit/PHPUnit

和控制台显示:

phpunit/PHPUnit not installed

我检查了PHPUnit文件夹,它仍然在那里吗?

是否已卸载?我尝试重新安装新的PHPUnit,但控制台显示:

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

如何重新安装?


下面是 的输出:pear list -c pear.phpunit.de

pear list -c pear.phpunit.de

下面是 的输出:pear list -c pear.phpunit.de

pear list -c pear.phpunit.de


答案 1

我检查了PHPUnit文件夹,它仍然在那里吗?

这可能是因为子组件(扩展,框架)。但是,您不必担心这一点。

要安装最新版本,请执行以下两个命令:

> pear config-set auto_discover 1
config-set succeeded

> pear upgrade
...

这将需要一些时间,并将更新当前安装的所有内容。由于您已经有一些扩展可用,并且最新版本的PHPUnit可能需要这些扩展,因此请更新它们以防止在下一个命令中失败:

> pear install pear.phpunit.de/PHPUnit

现在应该安装它:

Did not download optional dependencies: phpunit/PHP_Invoker, use --alldeps to download automatically
phpunit/PHPUnit can optionally use package "phpunit/PHP_Invoker" (version >= 1.0.0)
downloading PHPUnit-3.6.7.tgz ...
Starting to download PHPUnit-3.6.7.tgz (118,349 bytes)
..........................done: 118,349 bytes
install ok: channel://pear.phpunit.de/PHPUnit-3.6.7

梨问题排查

正如您在评论中报道的那样,这并没有奏效。可能梨处于不知道顶部和底部位置的状态。是时候强制了。首先,清除缓存:

> pear clear-cache
reading directory C:\...\Temp\pear\cache
0 cache entries cleared

然后强制频道更新:

> pear channel-update -f pear.php.net
Updating channel "pear.php.net"
Update of Channel "pear.php.net" succeeded

> pear channel-update -f pear.phpunit.de
Updating channel "pear.phpunit.de"
Update of Channel "pear.phpunit.de" succeeded

然后强制安装 phpunit:

> pear install -a -f phpunit/PHPUnit

答案 2

由于Google将这个问题称为“如何删除它”,因此回答这个问题似乎很重要。

作为根,使用:

pear list -c phpunit | grep stable | awk '{print "phpunit/"$1}' | xargs pear uninstall

在这里找到这个答案


推荐