2013-04-20 11 views

Odpowiedz

12

oparciu o numerze śledzone tutaj: https://nuget.codeplex.com/workitem/3278

  1. Musisz użyć xbuild ze wszystkich projektów, które powinny przywrócić pakietów na budowie. MonoDevelop-> Preferences-> Build Enable xbuild in MonoDevelop or Xamarin Studio
  2. W systemach plików Unix rozróżniana jest wielkość liter. Łamie to nuget.targets, ponieważ zakłada się, że obudowa wewnątrz pliku jest pisana małymi literami, podczas gdy pliki dodane do rozwiązania w folderze .nuget mają taką samą wielkość jak "NuGet". Albo fixup nuget.targets lub zmień nazwy plików w folderze solutions .nuget na wszystkie małe litery.
  3. RequireRestoreConsent ma domyślnie wartość true w pliku nuget.targets. Edytuj plik nuget.targets i zmień go na false.
  4. Przywracanie pakietów umieszcza folder pakietu w dziwnej lokalizacji, $(SolutionDir)/ /packages (tak, tam znajduje się pojedynczy biały folder pomiędzy). Powodem jest to, że nie jest to końcowe spacje w nuget.targets w po $(SolutionDir) w <RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch) -solutionDir "$(SolutionDir) "</RestoreCommand>
+1

działa wspaniale :) Czy istnieje sposób, aby zatrzymać to instalowanie pakietów każdy budować? Przywracanie pakietów znacznie spowalnia kompilacje ... – Chris

+0

@Chris: Zauważyłem ten sam problem, ale nie udało mi się go naprawić, a poprawki do tej odpowiedzi są mile widziane! –

+0

Gdzie nuget.targets żyje na OSX? –

Powiązane problemy