2014-09-18 15 views
7

OK, sytuacja jest dość prosta (choć un-rozwiązywalne ...):Siła Xcode ZAWSZE ZASOBY skopiować folder na budowie

  • Mam folder odniesienie w moim projekcie Xcode, głównie z HTML/JS/CSS, często się zmienia, używając zewnętrznego edytora
  • Chcę, aby ten konkretny folder został ponownie skopiowany do pakietu aplikacji, dla co kompilacji, bez konieczności czyszczenia projektu (projekt jest OGROMNY, więc niepotrzebnie kompilacja to strata czasu)

Próbowałem dodać niestandardową fazę kompilacji (uruchomić skrypt), albo przez touch w tym folderze, albo tworząc plik dummy w folderze zasobów i usuwając go później, ale nic z tego nie zadziałało.

Wszelkie pomysły?

Odpowiedz

4

Co ostatecznie pracował dla mnie:

  • Tworzenie "Uruchom" Build fazy Script, przedCopy Bundle Resources
  • Ustaw skrypt w następujący sposób:

    find "${SRCROOT}/path/to/resources/$1" -type f -print0 | xargs -0 touch 
    
+0

Dlaczego nie napisać skryptu, który wykonuje kopiowanie? – trojanfoe

+0

@trojanfoe Cóż, zabawne jest to, że myślałem o tym (oczywistym) rozwiązaniu, kilka minut po jego rozwiązaniu (i zmaganiu się z tą głupią rzeczą, jak przez 2 godziny ...)! lol. :-) –

+0

Jedynym problemem jest konieczność użycia poprawnych zmiennych środowiskowych Xcode, aby mógł działać zarówno w wersjach normalnych, jak i archiwalnych. Nie jest trywialne, jednak pisałem w przeszłości skrypty, które podpisywały i kopiowały pliki, więc jest to z pewnością możliwe :) – trojanfoe

1

Przetestowałem, że jeśli zmienisz datę ostatniej modyfikacji pliku na teraz, Xcode utworzy nowszy plik w pakiecie.

Nowa, nowa faza kompilacji skryptu uruchamiania ze skryptem, skrypt musi zostać uruchomiony przed Copy Bundle Resources.

enter image description here

W skrypcie wyliczyć każdy plik zasobów i korzystać touch -m filename.

+0

Dzięki! Blisko, ale nadal nie działa dla mnie. Publikuję to, co w końcu ** zrobił ** działa .. –

Powiązane problemy