2013-09-09 8 views
15

Mam problem z moją kompilacją (TFS2010). Całkiem dobrze było z tą kompilacją od niedawna aż do dzisiaj, w której teraz pojawia się błąd prawie natychmiast po rozpoczęciu kompilacji:TFS build broken - katalog nie jest pusty w katalogu ze źródłami

Usuń katalog źródeł (00:00) Katalog nie jest pusty.

Spojrzałem na serwerze i widzę \ builds \ 1 \ myproject \ sources \ jest pusty ... nie ma w nim nic! Błąd wskazuje na to, że tak nie jest, ale na pewno jest pusty.

Zastanawiam się, czy w tym przypadku nie powinno być puste? Czy ktoś może mi doradzić, w jaki sposób mogę podjąć się tego działania, aby ponownie rozpocząć budowę?

to dziennik nieudanej kompilacji:

Ogólnie Budowa Proces
00:00
Aktualizacja Ilość Budowa
00:00
Tworzenie spadku Lokalizacja
00:03
Run On Agent (agent instalacji zarezerwowanej Agent domyślny - serwer1)
00:00
Usuwanie wyników testu Katalog
00:00
Usuń Binaries katalog
00:00
Delete Workspace
00:00
Usuń Źródła katalog
Katalog nie jest pusty.

wielkie dzięki za pomoc!

+0

Czy sprawdziłeś kartę Ustawienia źródła w swojej kompilacji? Upewnij się, że folder kontrolny źródła i mapowania folderów Kreatora instalacji są poprawne. sprawdź czy coś ostatnio się zmieniło. – suresh2

+0

Hej, wszystko wygląda dokładnie tak, jak podczas pracy. Patrząc na kopię zapasową folderu źródłowego, widzę, że pierwsza kompilacja, która spowodowała błąd, narzekała na uprawnienia przy usuwaniu pliku po uruchomieniu kompilacji (co spowodowało zatrzymanie kompilacji). Folder źródeł był wtedy niekompletny i teraz jest pusty. – bruceiow

+1

Ręcznie usuwaj pliki znajdujące się w folderze e \ builds \ 1 \ myproject, a następnie w sekcji Karta procesu budowy zmień czysty obszar roboczy na Wszystkie, jeśli jest ustawiony jako Wyjście. Wypróbuj kompilację. jeśli działa, zmień czystą przestrzeń roboczą na poprzednie ustawienia. – suresh2

Odpowiedz

35

Zwykle dzieje się tak, gdy jakiś inny proces ma uchwyt w systemie plików. Eksplorator lub okno wiersza polecenia często jest winnym.

+7

+1. Najczęściej jest to, że otworzyłeś eksplorator plików w folderze kompilacji, a zamknięcie go rozwiąże problem. W najgorszym przypadku (jest bardzo mało prawdopodobne, aby było tak źle) może być konieczne ponowne uruchomienie serwera w celu wypłukania wszelkich niezamkniętych uchwytów. –

+0

Dobrym narzędziem do śledzenia tego problemu jest SysInternals Process Explorer (https://technet.microsoft.com/en-us/sysinternals). Możesz wybrać "Znajdź uchwyt pliku lub DLL ..." i wprowadź fragment ścieżki do katalogu budowania. Pokaże Ci wszystkie procesy, które obsługują tę ścieżkę, więc wiesz dokładnie, co zamknąć lub zabić. Pozwoliło mi to zaoszczędzić wiele niepotrzebnych ponownych uruchomień. –

0

z wyjątkiem przypadku, gdy ktoś podjął się obsługi subdiru lub jakiegokolwiek pliku w tym katalogu - taki błąd może wystąpić, gdy istnieją pliki w katalogu (lub w dowolnym podkatalogu) o długości ścieżki> 260 symboli. W takich przypadkach musisz usunąć "\\? \ C: \ mydir" zamiast "C: \ mydir". Około 260 granic symboli można przeczytać here.

0

Zwykle uchwyt pliku jak wspomniano powyżej, chociaż jeśli nie możesz znaleźć winowajcy usunięcie "C: \ agent_work \ # NumberOfBuildDefinition #" zwolni to i oznacza, że ​​kompilacja może ponownie opublikować.

Zdarza się to jako definicja kompilacji, ustawienia repozytorium "Clean" ustawione na "true" i "Clean options" ustawione na "Sources", więc na każdym nowym kompilacji, który próbuje usunąć wszystkie pliki z danego folderu .

0

Znalazłem ten problem, ponieważ jeden z folderów wdrażania w "c: \" był otwarty. więc zamknij folder i uruchom swoją kompilację. dzięki

Powiązane problemy