Przeprowadziliśmy migrację z TFS 2010 do TeamCity i mamy problemy z budowaniem naszego pliku rozwiązania.Kompilacja błędów w rozwiązaniu ASP.Net .NET 4.0 + klient google-api-dotnet przy użyciu serwera budowania TeamCity
Używamy .NET 4.0. Biblioteka Google często powoduje problemy z .NET 4.0 + system.net.http podczas próby jej zbudowania. Udało nam się uzyskać tę konfigurację działającą na TFS (używa MSBuild 4.0) bez błędów.
App.config powinien mieć poprawne assemblybindings:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.28.0" newVersion="2.2.28.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.28.0" newVersion="2.2.28.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
Już próbowałem: - korzystać z różnych Runner: Visual Studio, msbuild - Referenced wszystkie dll bezpośrednio (google + system.net.http + itd.) - Wykorzystanie prosto Nuget Pakiet przywrócić na tych bibliotek DLL (przywraca wszystko ok)
błąd kompilacji: ResolveAssemblyReference] C: \ Program Files (x86) \ MSBuild \ 12.0 \ bin \ Microsoft.Common.CurrentVersion .targets (1635, 5): ostrzeżenie MSB3268: Th Początkowe odniesienie "Google.Apis.Auth.PlatformServices, wersja = 1.9.0.26016, Culture = neutral, processorArchitecture = MSIL" nie może zostać rozwiązane, ponieważ ma pośrednią zależność od zestawu ramowego "System.Net.Http, wersja = 2.2 .22.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a ", które nie mogły zostać rozwiązane w aktualnie ukierunkowanym frameworku. ".NETFramework, Version = v4.0". Aby rozwiązać ten problem, usuń odwołanie "Google.Apis.Auth.PlatformServices, Version = 1.9.0.26016, Culture = neutral, processorArchitecture = MSIL" lub ponownie zastosuj swoją aplikację do wersji frameworka, która zawiera "System.Net.Http, Version = 2.2.22.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a ".
następują: [07:58:29] W [MSBuild wyjście] C: \ \ BuildAgent pracy \ dda43f1992063b18 \ Integracja \ CalendarSync \ urządzenia \ kalendarz pomocną \ GoogleCalendarDevice.vb (788,78): błąd BC30009 : Odnośnik wymagany do złożenia "Google.Apis, wersja = 1.9.0.23042, Culture = neutral, PublicKeyToken = null" zawierający zaimplementowany interfejs "Google.Apis.Requests.IDirectResponseSchema". Dodaj jeden do swojego projektu. [C: \ BuildAgent \ work \ dda43f1992063b18 \ Integracje \ CalendarSync \ Severa.Integrations.CalendarSync.vbproj]