Supprimer ou désinstaller la bibliothèque ajoutée précédemment: cocoapods

320

J'ai ajouté un framework externe via des cocoapods dans mon application iOS. Comment puis-je supprimer cette bibliothèque du projet?

Lithu TV
la source

Réponses:

317

Étant donné que les effets secondaires de la réponse acceptée ont été supprimés par un script écrit par Kyle Fuller - désintégrer , je publierai le flux de travail approprié ici:

  1. Installez propre:

    $ sudo gem install cocoapods-clean
  2. Exécutez deintegrate dans le dossier du projet:

    $ pod deintegrate

  3. Nettoyer:

    $ pod clean

  4. Modifiez votre podfile (supprimez les lignes avec les pods que vous ne souhaitez plus utiliser) et lancez:

    $ pod install

Terminé.

Michal
la source
2
Ce pod devrait être la réponse acceptée, car il est beaucoup plus approfondi. Bien que, avant de suivre ce workflow, je suggère d'effacer le contenu du répertoire Derived Data du projet et de s'assurer de valider les modifications du projet dans le référentiel de code existant. Enfin, après avoir exécuté pod install, j'ai ouvert le fichier Xcode xcworkspace, effectué un nettoyage complet du dossier de construction (alt + shift + commande + K), et les erreurs d'avertissement / de l'éditeur de liens avaient disparu. Les pods ont maintenant été correctement désinstallés du projet.
Mark Barrasso
Note à @All: Cette commande cocoapods-cleansupprime le Podfileet.xcworkspace
Suhaib
6
Semble désormais pod deintegrateofficiel: guides.cocoapods.org/terminal/commands.html#pod_deintegrate Pas besoin de sudo gem install cocoapods-deintegrate.
Pang
4
J'appuie cela de @ZinWinHtet, quand j'essaye, pod cleanj'obtiens:$ pod clean [!] Unknown command: clean
ScottyBlades
2
oui ..., pod clean n'existe plus je pense.
Zin Win Htet
455

Supprimez lib de Podfile, puis à pod installnouveau.

fannheyward
la source
9
Lorsque je fais cela, je me retrouve avec des dizaines d'avertissements dans XCode 5 se plaignant que l'espace de travail ne peut pas trouver les fichiers supprimés. J'ai essayé de nettoyer cela manuellement, mais sans succès. Comment pouvez-vous retirer proprement un pod?
Matt Mombrea
8
Recherchez le fichier de pods dans le Finder, puis supprimez chacun des pods individuels (vous remarquerez qu'il leur manque les fichiers .h et .m). Alors pod update. Cela a fonctionné pour moi.
AMayes
9
Vous obtenez également les avertissements que @MattMombrea mentionne si vous avez réussi à supprimer les podfiles, mais que vous n'avez pas validé la modification. Assurez-vous que tout est validé dans le référentiel de code.
HughHughTeotl
1
L'article mentionné par @vrunoa est désormais un lien mort. Cet article est utile: stackoverflow.com/questions/16427421/…
Lane Rettig
2
Je veux supprimer un framework installé par pod sans mettre à jour ou installer podfile
Anand Prakash
25
  1. Supprimer la bibliothèque de votre Podfile

  2. Exécuter pod installsur le terminal

user5807443
la source
5

Rien de tout cela n'a fonctionné pour moi. J'ai la version 1.5.3 du pod et la bonne méthode était de supprimer les pods qui n'étaient plus nécessaires du Podfile, puis d'exécuter:

pod update

Cela met à jour votre fichier Podfile.lock de votre Podfile, supprime les bibliothèques qui ont été supprimées et met à jour toutes vos bibliothèques.

src
la source
1
Vous n'avez pas besoin de mettre à jour toutes les bibliothèques de votre projet (ce qui peut être très dangereux) juste pour supprimer une bibliothèque. Il existe de bien meilleures façons dans ce fil, y compris la suppression du pod de votre podfile, puis l'exécutionpod install
Braden Holt
Cela met à jour toutes les versions de vos bibliothèques et supprime naturellement celle qui n'est plus présente dans le Podfile, mais voulez-vous vraiment mettre à jour les bibliothèques? Retrait du pod et pod installest la bonne façon.
Karim Mortabit
1
  1. Supprimez le nom du pod (à supprimer) du Podfile, puis
  2. Ouvrir le terminal, définir le chemin du dossier de projet
  3. Exécuter l'installation de pod - pas d'intégration
KD
la source
1
Je reçois cette erreur:[!] Unknown option: '--no-integrate'
neoneye
-1

Supprimez le nom du module, Podfilepuis ouvrez Terminal, définissez le chemin du dossier de projet et la pod updatecommande Exécuter .

REMARQUE: pod updatemettra à jour toutes les bibliothèques vers la dernière version et supprimera également les bibliothèques dont le nom a été supprimé du fichier pod.

Roohul
la source