数日前にPEARインストーラーを使用してPHPUnitをインストールしました(PHP目的でテストするためにSeleniumRCもインストールしました)。今度はそれをアンインストールします(また関連するすべてのフォルダとファイルを削除します)
次のコマンドを実行しました。
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
の出力は次のとおりです。
PHPUnitフォルダーを確認しましたが、まだそこにありましたか?
これは、サブコンポーネント(Extensions、Framework)が原因である可能性があります。しかし、あなたはそれについて心配してはいけません。
最新バージョンをインストールするには、次の2つのコマンドを実行します。
> 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のトラブルシューティング
コメントで報告したように、これはうまくいきませんでした。洋ナシは上下がどこにあるのかわからない状態になっているのでしょう。強制する時間。まず、キャッシュをクリアします。
> 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
グーグルがこの質問を「それを取り除く方法」と呼んだので、質問に答えることは重要であるように思われます。
ルートとして、以下を使用します。
pear list -c phpunit | grep stable | awk '{print "phpunit/"$1}' | xargs pear uninstall
この答えを見つけました ここ