MS Build任务找不到AL.EXE

时间:2017-02-09 12:53:30

标签: msbuild al.exe

问题如下:

  

C:\的Windows \ Microsoft.NET \框架\ v4.0.30319 \ Microsoft.Common.targets(2863,5):   错误MSB3086:任务无法使用SdkToolsPath“”找到“AL.exe”   或注册表项“HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft   SDKs \ Windows \ v8.0A \ WinSDK-NetFx40Tools-x86“。确保   设置了SdkToolsPath,该工具存在于正确的处理器中   SdkToolsPath下的具体位置和Microsoft   Windows SDK已安装

我尝试过在网上找到的各种费力的解决方案,但最后我设法解决了这个问题:

  1. 转到C:\Windows\Microsoft.NET\Framework\v4.0.30319\
  2. 使用文本编辑器打开文件Microsoft.Common.targets
  3. 在步骤2中搜索文件中的"al.exe",并将"ToolPath""ToolExe"字段替换为"al.exe"文件的实际路径。
  4. 我已按以下方式在步骤3设置了两个字段:

      

    ToolPath =“C:\ Program Files(x86)\ Microsoft   SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0工具\“           ToolExe =“C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0 Tools \ al.exe”

    感谢。

2 个答案:

答案 0 :(得分:1)

您应该在MSBuild调用之前注册变量:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\vsvars32.bat

我使用psake,它会自动注册变种。

替代解决方案 - 添加一个参数:

msbuild.exe "/p:TargetFrameworkSDKToolsDirectory=C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools"

答案 1 :(得分:0)

您需要检查msbuild.exe的路径

我通过更改路径解决了相同的问题 来自“ C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319” 到“ C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Professional \ MSBuild \ 15.0 \ Bin”