首页 文章

升级到不在Windows 2012 Jenkins服务器上构建的.NET Framework 4.6

提问于
浏览
1

我们有一个新的Windows 2012服务器,我一直使用它作为我们的Jenkins构建服务器 . 我的应用程序已经在.NET Framework 4.5上成功构建,但是当我们升级到.NET 4.6时,构建已停止工作 .

向下看日志我看到这个错误:

RateCalculator.cs(49,13):错误CS0012:类型'System.Object'在未引用的程序集中定义 . 您必须添加对程序集'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>

但是它没有解决错误 .

我们通过检查Windows更新和注册表,仔细检查了.NET Framework 4.6是否已正确安装 .

在我的本地开发环境中,它在我在Windows 7上运行的Visual Studio 2015上进行编译时正确构建.Jenkins构建服务器在Windows 2012服务器上安装了Visual Studio 2012,这就是错误出现的地方 .

1 回答

  • 1

    所以我通过在Windows 2012服务器上安装.NET Framework 4.6 Targeting pack解决了这个问题 .

    如果您使用的是Visual Studio 2012并且想要使用.NET 4.6,则需要在安装目标包之前下载并安装.NET Framework 4.6 .

    感谢Hans Passant和其他人帮助我指向目标包 .

    我安装它:https://www.microsoft.com/en-us/download/details.aspx?id=48136

相关问题