„Polecenie / usr / sbin / chown nie powiodło się z kodem zakończenia 1” podczas archiwizacji

85

Próbuję zarchiwizować moją pierwszą aplikację iOS 4.3 na iPhone'a i zawsze napotykam ten błąd:

Command /usr/sbin/chown failed with exit code 1

Przeszukałem różne fora, próbując rozwiązań, takich jak zmiana alternatywnej grupy instalacyjnej (na którą nie wiem, co mam zmienić) i włączanie opcji „Pomiń instalację”.

Justin
źródło
Czy możesz otworzyć kartę dziennika (kartę dymku mówienia), wybrać dziennik kompilacji, a następnie rozwinąć linię chmod, która kończy się niepowodzeniem i dołączyć pełne polecenie i wynik w pytaniu?
Mattias Wadman

Odpowiedzi:

116

Choć brzmi to głupio, w XCode 5.1.1 wszystko, co musiałem zrobić, to wyjść i ponownie uruchomić XCode. Wiem, że to nie jest "odpowiedź", ale po prostu zadziałała.

Edycja: to nadal działa od lipca 2018 r. Dla ludzi. Edycja: to nadal działa od stycznia 2019 xcode 9.4.1

Dan
źródło
2
miał ten sam problem w 6.3 i ponowne uruchomienie xcode naprawiło to
Przestarzałe Darren
2
Sprawdzanie XCode 7. Ponowne uruchomienie również rozwiązało problem.
thefoyer
1
Przyjdź 2017 - Xcode 8.3.3 Napotkałem ten problem. Google pokazał ten link SO dla problemu. Byłem zaskoczony, widząc, że zagłosowałem już za to pytanie! Przewinąłem w dół, byłem zaskoczony, widząc, że głosowałem za tą odpowiedzią. Najwyraźniej ponowne uruchomienie Xcode rozwiązało problem i
kliknąłem
1
@RajPawanGumdal Zatoczyliśmy koło, a Apple nadal nie może naprawić swojego IDE. To jest wspaniałe.
Dan,
2
Ponowne uruchomienie Xcode naprawiło to dla mnie w Xcode 9.2. Więc absolutnie nie „głupia” odpowiedź! Każdy, kto widzi ten problem, powinien spróbować tego, zanim zacznie żałować, przeglądając ustawienia swojego projektu lub, co gorsza, zmieniając uprawnienia w folderach systemu Mac!
ChillyPenguin
87

wprowadź opis obrazu tutaj

Miałem problemy z częścią archiwizacji SetOwnerAndGroup - nie udało mi się uzyskać / usr / sbin / chown i otrzymywało komunikat „operacja niedozwolona” na każdym pliku, który próbował „chown”.

Można to łatwo przetestować w terminalu - „chown” nie działa, ale „sudo chown” tak. Ponieważ nie musiałem zmieniać uprawnień do plików, najprostszym rozwiązaniem było nie robić tego.

Powyższy zrzut ekranu pokazuje - właśnie wyczyściłem Instaluj właściciela / grupę i to się udało.

adalle
źródło
8
Upewnij się również, że jeśli masz jakiekolwiek podprojekty / biblioteki w swoim projekcie (np. CordovaLib), aby również wyczyścić tam właściciela / grupę instalacji.
tschoffelen
5
dzięki, to było dokładnie to, czego potrzebowałem! Ale zastanawiam się, po co mi to. Wczoraj działało, dziś nie. Oczywiście musiałem również wyczyścić uprawnienia
Phil
Jeśli w środowisku korporacyjnym może się to zdarzyć, a ten wpis rozwiązuje ten problem. Znakomity.
ort11
Zwykle nie uważałbym, że wykonanie tego kroku jest konieczne, ale rozwiązuje problem. Wróciłem do tej odpowiedzi kilka razy.
funroll
w rzeczy samej. Po wypróbowaniu kilku innych rzeczy udało się rozwiązać problem.
Moonwalker
61

Kiedy pojawił się ten błąd, ponowne uruchomienie komputera naprawiło problem.

dl.
źródło
10
Ponowne uruchomienie było jedyną rzeczą, która naprawiła to również dla mnie.
SteveB
Nie naprawia tego.
C0D3
Pracował dla mnie. +1
SmallChess
24

Wypróbowałem wszystkie inne rozwiązania, ale żadne z nich nie zadziałało. Więc uruchomiłem to na terminalu, aby zmienić właściciela na mnie dla każdego pliku w moim projekcie:

sudo chown -R my_username:my_group ./my_project_folder

gdzie „moja_nazwa_użytkownika” to Twoja nazwa użytkownika, „moja_grupa” to Twoja grupa (zwykle jest to personel), a „my_project_folder” to folder Twojego projektu.

Spyros El.
źródło
1
to działało dla mnie. Mój problem polegał na tym, że raz użyłem „sudo” z preparatem cordova
AmineG
6

Żadne z innych rozwiązań nie działało dla mnie w Xcode 4.5. Musiałem zrobić co następuje:

Rozwiązanie polega na usunięciu architektury armv6 zarówno z projektu, jak i projektu CordovaLib, wyczyszczeniu obu projektów i ponownym skompilowaniu.

Źródło

Bashevis
źródło
2
Aby opracować te kroki: w Xcode kliknij swój projekt, przejdź do zakładki Build Settings, w sekcji Architectures musi być napisane tylko armv7. Zrób to samo dla projektu CordovaLib (znajduje się w lewym okienku, tak samo jak projekt). Następnie wyczyść oba projekty za pomocą opcji Produkt -> Wyczyść. To zadziałało również dla mnie, rozwiązało mój problem.
duality_
2

Aby to działało w moim środowisku, wyczyściłem wszystkie informacje o pozwoleniu, jak powiedział + adalle , uzupełnione przez Toma i Phila

I opróżnić pola Install Grupa , Instalacja Właściciel , Zainstalować Permission tym Cordova podprojektem

Helder Robalo
źródło
2

wprowadź opis obrazu tutajMiałem ten sam problem z Xcode. Zaczął działać po ponownym uruchomieniu Xcode. Na zrzucie ekranu Xcode -> ustawienia kompilacji, zainstalowana grupa była pusta po ponownym uruchomieniu Xcode. Identyfikator grupy, który pokazał jako numer.

Kishor
źródło
1

Nie jestem pewien, czy jest to ten sam problem, który masz, ale to rozwiązało go dla mnie:

Kiedy tworzyłem projekt XCode, moja nazwa aplikacji zawierała spację, więc próba wdrożenia mojej aplikacji zawsze kończyła się niepowodzeniem. Udało mi się to naprawić za pomocą pliku Custom Archive Name.

W XCode 4 ...

  1. Edytuj schemat wdrażania
  2. Kliknij kartę Archiwum
  3. Następnie określ nazwę archiwum, która nie zawiera spacji.

Określ niestandardową nazwę archiwum

Andrzej
źródło
1

Wypróbowałem wszystkie możliwe warianty i nie pomogły mi. Pobrałem więc stare XCode 4.4.1 i voila - aplikacja zarchiwizowana pomyślnie :)

Vladimir Tkachenko
źródło
1
  1. Wybierz cel, który powoduje błąd
  2. Zmień Build Active Architecture Onlyz Tak na Nie

To zadziałało dla mnie.

funroll
źródło
1

Dla mnie zrestartuj mój Mac naprawił to. OS High Sierra, xCode 9.2

Thafer Shahin
źródło
0

Kiedy zdarza mi się to na Xcode 8, robię „Wyczyść folder kompilacji” 2 razy (za pierwszym razem wyświetla błąd, ale za drugim się udaje), a następnie ponownie archiwizuję.

Uwaga: Opcja „Wyczyść folder kompilacji” znajduje się w menu „Produkt”, przytrzymaj przycisk alt, a zobaczysz, że opcja „Wyczyść” zmieni się na „Wyczyść folder kompilacji”.

quarac
źródło
0
  • Wyczyść swój projekt.
  • Wyczyść folder kompilacji. (Produkt> ⌥> Clean Build Folder)
  • Ustaw urządzenie docelowe na Ogólne urządzenie iOS.

wprowadź opis obrazu tutaj

Jasio
źródło