2013-08-14 8 views
11

Otrzymuję te błędy podczas uruchamiania kroku budowania MSBuild, który buduje projekt sieciowy w TeamCity i mam skonfigurowane cele Nuget plik PackageSource do wskazania lokalnego serwera Nuget np. PackageSource Include = "http: // mylocaldevurl/nuget/Packages".MSBuild NuGet.targets, Nuget.exe: Nie można odczytać pakietu z błędu ścieżki "blah.nupkg"

Kompilacja działa i generuje błędy w postaci np. Exec] F: \ TeamCity \ buildAgent \ work \ blahblah.nuget \ NuGet.targets (87, 9): Nie można odczytać pakietu ze ścieżki "Lucene.Net.3.0.3.nupkg".

Co jest dziwne, inne pakiety są wczytywane do folderu roboczego TeamCity - do folderu z pakietami .

Lokalny serwer Nuget zawiera kopie moich pakietów rozwiązań VS (te w domyślnym folderze pakietów) z plikami .nupkg.

Moje pytanie jest coś, co muszę zrobić, kopiując pliki .nupkg do tego serwera. Być może czegoś brakuje.

już dwukrotnie sprawdzane że pakiety istnieje w lokalnym serwerze

Odpowiedz

0

Robimy to poprzez aktualizację pliku konfiguracyjnego Nuget dla użytkownika, że ​​BuildAgent jest uruchomiony pod Zamiast ustawiać źródło pakietów i to działało dobrze, ponieważ NuGet v1.6.

pliku: C \ Users \ svc_teamcity \ AppData \ Roaming \ Nuget \ NuGet.config

wygląda następująco:

<activePackageSource> 
    <add key="NuGet official package source" value="https://nuget.org/api/v2/" /> 
    <add key="MyNuGetGallery" value="D:\NuGet.Packages" /> 
</activePackageSource> 
15

miałem ten sam problem przy użyciu TFS. Naprawiłem to, co było jasne, pamięć podręczną nuget w profilu użytkownika, który uruchamiał kompilację (% LocalAppData% \ NuGet \ Cache). Opróżniłem katalog i ponownie uruchomiłem kompilację, a następnie zadziałało.

+0

Właśnie usunąłem problematyczny pakiet z pamięci podręcznej. Byłoby bardzo interesujące, aby zrozumieć, dlaczego to rozwiązuje problem. Edycja: faktycznie, myślę, że pakiet był uszkodzony (pakiet roboczy jest znacznie większy na dysku) – Anton

6

Jeśli TeamCity jest uruchomiona w ramach konta użytkownika systemu, to możesz spróbować wyczyścić Nuget Cache, która znajduje się w jednym z tych folderów:

  • C: \ Windows \ System32 \ config \ systemprofile \ AppData \ Local
  • C: \ Windows \ SysWOW64 \ config \ systemprofile \ AppData \ Local
2

W moim przypadku, konto usługi są wykorzystywane do uruchomienia agenta kompilacji miał ograniczony dostęp do internetu na zewnątrz za pośrednictwem naszego pełnomocnika Websense.

Komunikat o błędzie ja trafiałem w dzienniku budowy:

Nie można odczytać pakietu od ścieżki „EntityFramework.5.0.0.nupkg”.

I nawigować do folderu cache dla użytkownika agenta kompilacji (C: \ Users \ {BuildAgentUser} \ AppData \ Local \ Nuget \ Cache) i okazało się, że plik .nupkg tam, który był przyczyną błędu.

Widziałem, że coś było nie tak, ponieważ plik miał tylko 3 KB, gdy na mojej własnej maszynie było ponad 1 MB.

Przeglądanie zawartości pliku .nupkg ujawniło problem - pobieranie zostało zablokowane przez WebSense i faktycznie zawierało komunikat o błędzie, który zostałby wyświetlony, gdyby został przeglądnięty w przeglądarce internetowej.

0

Miałem ten sam problem, ale na Macu. To, co zrobiłem, to po prostu usunąć jeden pakiet nuget, który był przyczyną problemu. Znajdowała się ona pod adresem:

/Users/yourusername/.local/share/NuGet/Cache 
0

wiem, jest to stara sprawa, ja w obliczu tego problemu w ostatnim czasie i żaden z rozwiązania przewidzianego powyżej nie rozwiąże mój problem. Przyczyną błędu był jeden z pakietów uszkodzony, a rozmiar pliku .nupkg wynosił 0 kb. To, co zrobiłem, to poprzednie kroki, które rozwiązały mój problem i mogłem ponownie zainstalować pakiety.

  1. Przejdź do katalogu projektu
  2. otworzyć pakiety folderu
  3. znaleźć pakiet, w którym otrzymujesz błąd (blah.nupkg)
  4. Usuń folder
  5. Zbuduj swój projekt i projekt zostanie pomyślnie zbudowana
Powiązane problemy