Rimuovi o disinstalla la libreria precedentemente aggiunta: cocoapods


320

Ho aggiunto un framework esterno tramite cocoapods nella mia applicazione iOS. Come posso rimuovere quella libreria dal progetto?

Risposte:


317

Poiché gli effetti collaterali della risposta accettata sono stati rimossi da una sceneggiatura scritta da Kyle Fuller - deintegrati , posterò il flusso di lavoro corretto qui:

  1. Installa pulito:

    $ sudo gem install cocoapods-clean
  2. Esegui disintegrazione nella cartella del progetto:

    $ pod deintegrate

  3. Pulito:

    $ pod clean

  4. Modifica il tuo podfile (elimina le linee con i pod che non vuoi più usare) ed esegui:

    $ pod install

Fatto.


2
Questo pod dovrebbe essere la risposta accettata, perché è molto più approfondito. Sebbene, prima di seguire questo flusso di lavoro, suggerirei di cancellare il contenuto della directory dei dati derivati ​​del progetto e di assicurarmi di eseguire il commit delle modifiche del progetto nel repository di codice esistente. Alla fine, dopo l'esecuzione pod install, ho aperto il file xcworkspace di Xcode, ho eseguito una pulizia completa sulla cartella build (alt + maiusc + comando + K) e gli errori di avviso / linker erano spariti. I pod sono stati ora disinstallati correttamente dal progetto.
Mark Barrasso,

Nota per @All: questo comando cocoapods-cleancancella Podfilee.xcworkspace
Suhaib il

6
Sembra ora pod deintegrateufficiale: guide.cocoapods.org/terminal/commands.html#pod_deintegrate Non è necessario sudo gem install cocoapods-deintegrate.
Fatta il

4
Secondo, da @ZinWinHtet, quando provo pod cleanottengo:$ pod clean [!] Unknown command: clean
ScottyBlades,

2
si ..., pod clean non esiste più, credo.
Zin Win Htet,

455

Rimuovi lib da Podfile, quindi di pod installnuovo.


9
Quando lo faccio, rimango con dozzine di avvisi in XCode 5 che lamentano che l'area di lavoro non riesce a trovare i file rimossi. Ho provato a ripulirlo manualmente ma non ci sono riuscito. Come puoi rimuovere in modo pulito un pod?
Matt Mombrea,

8
Trova il file pod nel Finder, quindi elimina ciascuno dei singoli pod (noterai che mancano i file .h e .m). Poi pod update. Questo ha funzionato per me.
AMes

9
Riceverai anche gli avvisi che @MattMombrea menziona se hai eliminato correttamente i file pod, ma non hai eseguito il commit della modifica. Assicurarsi che tutto sia impegnato nel repository di codice.
HughHughTeotl,

1
L'articolo che @vrunoa menziona ora è un link non funzionante. Questo articolo è utile: stackoverflow.com/questions/16427421/…
Lane Rettig,

2
Voglio eliminare un framework installato da pod senza aggiornare o installare podfile
Anand Prakash,

25
  1. Rimuovi la libreria dal tuo Podfile

  2. Esegui pod installsul terminale


5

Nessuno di questi ha funzionato per me. Ho la versione 1.5.3 del pod e il metodo corretto era rimuovere i pod che non erano più necessari dal Podfile e quindi eseguire:

pod update

Questo aggiorna il tuo file Podfile.lock dal tuo Podfile, rimuove le librerie che sono state rimosse e aggiorna tutte le tue librerie.


1
Non è necessario aggiornare tutte le librerie del progetto (qualcosa che può essere molto pericoloso) solo per rimuovere una libreria. Ci sono molti modi migliori in questa discussione incluso rimuovere il pod dal tuo podfile e poi correrepod install
Braden Holt

Questo aggiorna tutte le versioni delle tue librerie e rimuove naturalmente quella che non è più presente nel Podfile, ma vuoi davvero aggiornare le librerie? Rimozione del pod ed pod installè il modo corretto.
Karim Mortabit il

1
  1. Rimuovere il nome del pod (che rimuovere) da Podfile e quindi
  2. Apri Terminale, imposta il percorso della cartella del progetto
  3. Esegui pod pod --no-integrate

1
Ricevo questo errore:[!] Unknown option: '--no-integrate'
neoneye,

-1

Rimuovere il nome del pod da Podfilequindi Apri terminale, impostare il percorso della cartella del progetto e il pod updatecomando Esegui .

NOTA: pod updateaggiornerà tutte le librerie all'ultima versione e rimuoverà anche quelle librerie il cui nome è stato rimosso dal podfile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.