1

У нас есть новый сервер Windows 2012, который я использую в качестве нашего сервера сборки Jenkins. Мое приложение успешно работает с .NET framework 4.5, но когда мы обновили до .NET 4.6, сборки перестали работать.Обновление до .NET Framework 4.6, не основанного на Windows 2012 Jenkins server

Глядя вниз журнал я вижу эту ошибку:

RateCalculator.cs(49,13): error CS0012: The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

не имеет Web.config в моем приложении, только файл Application.config. Я попытался добавить это:

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
     <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" /> 
    </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

Однако это не помогло устранить ошибку.

Мы проверили, что .NET framework 4.6 установлен правильно, как путем проверки обновлений Windows, так и в реестре.

В моей локальной среде разработки он корректно скомпилирован с моей компиляцией на Visual Studio 2015, запущенной в Windows 7. На сервере сборки Jenkins есть Visual Studio 2012 на сервере Windows 2012, и именно там появляются ошибки.

+0

Это является грубым решением, но почему бы не устанавливать бесплатную версию VS 2015 на сервере сборки? – Erwin

+0

Ваш сервер сборки не знает, что фаз около 4.6, у него нет установленного пакета таргетинга. Ничего не знает о C# v6. Не обновлять сервер сборки вместе с версией VS, которую разработчики используют, это, конечно, ошибка. –

+0

Да, Ханс, вы правы - сервер сборки не знал о 4.6 – ShaunP

ответ

1

Итак, я решил это, установив пакет таргетинга .NET Framework 4.6 на моем сервере Windows 2012.

Если вы используете Visual Studio 2012 и хотите использовать .NET 4.6, вам необходимо загрузить и установить .NET Framework 4.6 перед установкой пакета таргетинга.

Спасибо Hans Passant и другим сотрудникам за помощь в указании на таргетинг.

Я установил его с: https://www.microsoft.com/en-us/download/details.aspx?id=48136