【问题标题】:Cannot build Visual Studio 2017 project on a clean machine无法在干净的机器上构建 Visual Studio 2017 项目
【发布时间】:2018-07-05 15:54:53
【问题描述】:

清洁 Windows Server 2016 机器,我已安装:

我从 MSBuild 收到以下错误消息:

[GetReferenceAssemblyPaths] C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin\amd64\Microsoft.Common.CurrentVersion.targets(1124, 5):错误MSB3644:框架的参考程序集 未找到“.NETFramework,Version=v4.5”。要解决此问题,请安装 此框架版本的 SDK 或 Targeting Pack 或重新定位您的 应用到您拥有 SDK 的框架版本 或已安装目标包。请注意,程序集将被解析 来自全局程序集缓存 (GAC) 并将用于代替 参考程序集。因此您的组装可能不正确 针对您想要的框架。

我该如何解决这个问题?

谢谢。

编辑:尝试安装 .NET Framework 4.5 我收到此错误:

Microsoft .NET Framework 4.5 已经是该操作的一部分 系统。您不需要安装 .NET Framework 4.5 可再分发。

已安装相同或更高版本的 .NET Framework 4.5 安装在这台计算机上。

尝试安装 .NET Framework 4.5.2 我收到此错误:

.NET Framework 4.5.2 或更高版本已安装在此 电脑。

【问题讨论】:

  • Version=v4.5 != .NET Framework 4.5.2
  • 目前无法安装 .NET Framework 4.5。你的意思是我应该将项目重新定位到 4.5.2?
  • @abenci 我回答你的问题了吗?请将其标记为答案。

标签: c# visual-studio msbuild visual-studio-2017


【解决方案1】:

安装 Visual Studio Build Tools 2017 时,可以选择要安装的组件。如果你从cmd 运行vs_buildtools.exe,它只安装了最小的MSBuild 工具集。

您可以通过 GUI 选择要安装的组件:


此外,您可以通过cmd 安装特定组件或工作负载:

vs_buildtools.exe --add Microsoft.Net.Component.4.5.TargetingPack --passive

您可以在此处找到工作负载和组件名称:Visual Studio Build Tools 2017 component directory

关于命令行参数的详细信息在这里:Use command-line parameters to install Visual Studio 2017


您可以考虑只安装您需要的工作负载(带有推荐的组件):

vs_buildtools.exe --add Microsoft.VisualStudio.Workload.MSBuildTools --add Microsoft.VisualStudio.Workload.WebBuildTools --includeRecommended --passive

或全部

vs_buildtools.exe --allWorkloads --includeRecommended --passive


您可以使用--quiet --wait 键代替--passive 使安装静默。

【讨论】:

    【解决方案2】:

    您似乎从错误的目录运行MSBuild

    C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin\amd64\

    尝试从bin 运行 MSBuild.exe,看看是否可行:

    C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin

    【讨论】:

    • 无事可做,我总是得到:C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targe ts(1124,5): error MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.5" were not found. To resol ve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed...
    • 试试Windows 10 SDK。确保在安装过程中选中.NET Framework 4.5 Software Development Kit
    【解决方案3】:
    1. 打开 Visual Studio 安装程序
    2. 点击VS安装下的“修改”按钮,
    3. 在摘要中,展开“.NET 桌面开发”类别
    4. 勾选“.NET Framework 4-4.6开发工具
    5. 您可能还想勾选其余可选部分。
    6. 按“修改”按钮开始安装

    【讨论】:

      【解决方案4】:

      无法在干净的机器上构建 Visual Studio 2017 项目

      您不能在该机器上安装 .NET Framework 4.5,因为您安装了更高版本的 .NET Framework 4.5.2。

      要解决此问题,您可以将项目重新定位到 4.5.2,也可以卸载 .NET framework 4.5.2 并安装 .NET framework 4.5。

      Install .NET Framework 4 (or 4.6) in Windows Server 2016

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-03-03
        • 2018-05-25
        • 2017-04-03
        • 2018-06-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多