Usuń lub odinstaluj wcześniej dodaną bibliotekę: cocoapods

320

Dodałem zewnętrzną platformę za pośrednictwem cocoapods do mojej aplikacji na iOS. Jak mogę usunąć tę bibliotekę z projektu?

Telewizja litowa
źródło

Odpowiedzi:

317

Ponieważ efekty uboczne zaakceptowanej odpowiedzi zostały usunięte przez skrypt napisany przez Kyle'a Fullera - deintegracja , opublikuję tutaj prawidłowy przepływ pracy:

  1. Zainstaluj czyste:

    $ sudo gem install cocoapods-clean
  2. Uruchom dezintegrację w folderze projektu:

    $ pod deintegrate

  3. Czysty:

    $ pod clean

  4. Zmodyfikuj swój plik pod (usuń linie ze strąkami, których już nie chcesz używać) i uruchom:

    $ pod install

Gotowy.

Michał
źródło
2
Ta kapsuła powinna być zaakceptowaną odpowiedzią, ponieważ jest znacznie dokładniejsza. Chociaż przed wykonaniem tego przepływu pracy sugerowałbym wyczyszczenie zawartości katalogu danych pochodnych projektu i upewnienie się, że zmiany projektu zostały zatwierdzone w istniejącym repozytorium kodu. Wreszcie po uruchomieniu pod installotworzyłem plik Xcworkspace Xcode, wykonałem pełne czyszczenie folderu kompilacji (alt + shift + polecenie + K) i zniknęły ostrzeżenia / błędy linkera. Strąki zostały pomyślnie odinstalowane z projektu.
Mark Barrasso
Uwaga do @Wszystkie: To polecenie cocoapods-cleanusuwa Podfilei.xcworkspace
Suhaib
6
Wydaje się, że teraz pod deintegratejest oficjalny: guide.cocoapods.org/terminal/commands.html#pod_deintegrate Nie ma potrzeby sudo gem install cocoapods-deintegrate.
Pang
4
Po drugie, z @ZinWinHtet, kiedy próbuję pod clean, otrzymuję:$ pod clean [!] Unknown command: clean
ScottyBlades
2
tak ... myślę, że pod clean już nie istnieje.
Zin Win Htet
455

Usuń lib z Podfile, a następnie pod installponownie.

fannheyward
źródło
9
Gdy to robię, pozostaję z dziesiątkami ostrzeżeń w XCode 5, narzekając, że obszar roboczy nie może znaleźć usuniętych plików. Próbowałem ręcznie to wyczyścić, ale nie powiodło się. Jak możesz czysto usunąć kapsułkę?
Matt Mombrea,
8
Znajdź plik strąków w Finderze, a następnie usuń poszczególne strąki (zauważysz, że brakuje im plików .h i .m). Potem pod update. To działało dla mnie.
AMayes
9
Otrzymasz także ostrzeżenia, o których wspomina @MattMombrea, jeśli pomyślnie usunąłeś pliki podfiles, ale nie zatwierdziłeś zmiany. Upewnij się, że wszystko jest przypisane do repozytorium kodu.
HughHughTeotl
1
Artykuł, o którym wspomina @vrunoa, jest teraz martwym linkiem. Ten artykuł jest pomocny: stackoverflow.com/questions/16427421/...
Lane Rettig
2
Chcę usunąć platformę zainstalowaną przez pod bez aktualizowania lub instalowania pliku podfile
Anand Prakash
25
  1. Usuń bibliotekę z pliku Podfile

  2. Uruchom pod installna terminalu

użytkownik5807443
źródło
5

Żadne z tych nie działało dla mnie. Mam wersję pod 1.5.3 i poprawną metodą było usunięcie strąków, które nie były już potrzebne z Podfile, a następnie uruchomienie:

pod update

To aktualizuje plik Podfile.lock z pliku Podfile, usuwa biblioteki, które zostały usunięte i aktualizuje wszystkie biblioteki.

src
źródło
1
Nie musisz aktualizować wszystkich bibliotek w swoim projekcie (coś, co może być bardzo niebezpieczne), aby usunąć bibliotekę. W tym wątku są znacznie lepsze sposoby, w tym usunięcie zasobnika z pliku pod, a następnie uruchomieniepod install
Braden Holt
To aktualizuje wszystkie wersje bibliotek i naturalnie usuwa tę, która nie jest już obecna w Podfile, ale czy naprawdę chcesz zaktualizować biblioteki? Usunięcie kapsuły i pod installto właściwy sposób.
Karim Mortabit
1
  1. Usuń nazwę zasobnika (który chcesz usunąć) z Podfile, a następnie
  2. Otwórz terminal, ustaw ścieżkę folderu projektu
  3. Uruchom instalację pod - bez integracji
KD
źródło
1
Otrzymuję ten błąd:[!] Unknown option: '--no-integrate'
neoneye
-1

Usuń nazwę zasobnika, Podfilea następnie Otwórz terminal, ustaw ścieżkę folderu projektu i uruchom pod updatepolecenie.

UWAGA: pod updatezaktualizuje wszystkie biblioteki do najnowszej wersji, a także usunie biblioteki, których nazwa została usunięta z podfile.

Roohul
źródło