Ho installato PHPUnit utilizzando il programma di installazione PEAR alcuni giorni fa (ho anche installato Selenium RC per i test in PHP). Ora voglio disinstallarlo (elimina anche tutte le cartelle e file correlati)
Ho eseguito il seguente command:
pear uninstall phpunit/PHPUnit
e la console visualizzata:
phpunit/PHPUnit not installed
Ho controllato la cartella PHPUnit, era ancora lì?
È stato disinstallato? Provo a reinstallare un nuovo PHPUnit, ma la console mostra:
No releases available for package "pear.phpunit.de/PHPUnit"
Come posso reinstallarlo?
Ecco l'output della pear list -c pear.phpunit.de
delle pear list -c pear.phpunit.de
:
Ecco l'output della pear list -c pear.phpunit.de
delle pear list -c pear.phpunit.de
:
Ho controllato la cartella PHPUnit, era ancora lì?
Ciò potrebbe essere dovuto a sottocomponenti (estensioni, framework). Tuttavia non devi preoccuparti di questo.
Per installare la versione più recente, eseguire i seguenti due comandi:
> pear config-set auto_discover 1 config-set succeeded > pear upgrade ...
Ciò richiederà del tempo e aggiornerà tutto ciò che è attualmente installato. Dato che alcune estensioni sono già disponibili e l'ultima versione di PHPUnit potrebbe richiedere quelle, quindi aggiornarle per evitare errori nel prossimo command:
> pear install pear.phpunit.de/PHPUnit
Questo dovrebbe ora installarlo:
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
Risoluzione dei problemi PEAR
Come hai segnalato nei commenti, questo non ha funzionato. Probabilmente la pera si trova in uno stato in cui non sa where sia la parte superiore e quella inferiore. Tempo di forzare. Innanzitutto, svuota la cache:
> pear clear-cache reading directory C:\...\Temp\pear\cache 0 cache entries cleared
Quindi forza gli aggiornamenti del canale:
> 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
Quindi forza l'installazione di phpunit:
> pear install -a -f phpunit/PHPUnit
Poiché Google ha fatto riferimento a questa domanda come "come rimuoverlo", sembra importnte rispondere alla domanda.
Come root, utilizzare:
pear list -c phpunit | grep stable | awk '{print "phpunit/"$1}' | xargs pear uninstall
Ho trovato questa risposta qui