MSBuild windows 2012 Visual Studio 2015找不到AxImp.exe

MSBuild windows 2012 Visual Studio 2015找不到AxImp.exe,windows,visual-studio-2015,msbuild,windows2012,Windows,Visual Studio 2015,Msbuild,Windows2012,我试图在Windows Server 2012和Visual Studio 2015中设置Jenkins,但无法使用MSBuild构建应用程序,我遇到了一些Windows SDK问题 (ResolveComReferences目标)-> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(2015,5): 错误MSB3091:任务失败,因为找不到“AxImp.exe”,或者 未安装正确的Microsof

我试图在Windows Server 2012和Visual Studio 2015中设置Jenkins,但无法使用MSBuild构建应用程序,我遇到了一些Windows SDK问题

(ResolveComReferences目标)->
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(2015,5): 错误MSB3091:任务失败,因为找不到“AxImp.exe”,或者 未安装正确的Microsoft Windows SDK。任务正在进行中 用于位置下方“bin”子目录中的“AxImp.exe” 在注册表项的InstallationFolder值中指定 HKEY\ U本地\计算机\软件\微软\微软 SDK\Windows\v8.0A\WinSDK-NetFx40Tools-x86。你也许能解决这个问题 通过执行以下操作之一可以解决此问题:1)安装Microsoft Windows SDK。2) 安装VisualStudio2010。3) 手动设置 以上注册表项的正确位置。4) 通过正确的 定位到任务的“刀具路径”参数中

我尝试了以下方法:

  • 创建指向已安装SDK的注册表项。没有成功
  • 卸载所有C++编译器,下载Windows 7 SDK ISO并安装,如所解释的。没有成功
  • 修改Visual Studio 2015安装添加和删除组件,明确标记要安装的SDK。没有成功
当从VisualStudio构建时,它构建得很好


我真的不知道这里发生了什么,也不知道为什么我不能让它工作,这对我来说似乎是一个关于Windows或Visual Studio 2015的bug。

解决方案比看起来容易得多,只是将项目节点的ToolsVersion从4.0改为14.0就成功了:

<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

所以我遇到了一个非常类似的问题,使用Jenkins和Msbuild来构建项目,并且得到了相同的错误

我的解决方案步骤:

  • 首先查明Jenkins计算机上是否存在Aximp.exe。我没有访问该计算机的权限,因此我在Jenkins文件中包含了一个阶段来运行此命令:
  • //temp,尝试获取生成计算机上aximp.exe的位置

    bat'dir“C:\Program Files(x86)\Microsoft SDK\Windows”/b/s aximp.exe

    然后我检查了输出,看看它在哪里

  • 然后,我在Jenkins文件中的msbuild命令中添加了一个参数,如下所示:
  • bat“msbuild mysolution.sln/p:VisualStudioVersion=14.0”/p:targetFrameworkDKToolsDirectory=C:\Program Files(x86)\Microsoft SDK\Windows\v10.0A\bin\NETFX 4.6.2 Tools”//您的aximp.exe所在文件夹


    现在就可以开始构建了

    如果您正在运行R2,您是否按照下面的说明安装了?是的,我安装了,但没有成功。您构建了什么项目?尝试安装Windows软件开发工具包(SDK)for Windows 8(),这是一个MVC 5项目,而不是正在构建的项目。。。我不知道为什么它完全依赖于Windows SDK,可能一些MSBuild公共目标正在引用它,因为.csproj没有明确提到任何SDK。Windows 8 SDK也没有解决这个问题。