Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Building on a Self-hosted VSTS-BuildAgent for VS 2017 fails with error "The TransformWebConfig task could not be loaded[...]"

We made the switch to Visual Studio 2017 and having trouble with our self-hosted build agent that gets its work from VSTS.

One VSTS-build step is building all solutions with "Visual Studio Build: Build Solution ***.sln" using "Visual Studio Version: Visual Studio 2017".
The following error happens for all our projects where "ASP.NET Core Web Application (.NET Core)" was the chosen project type.

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets(54,5): error MSB4062: The "TransformWebConfig" task could not be loaded from the assembly C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0....\tools\net46\Microsoft.NET.Sdk.Publish.Tasks.dll. Could not load file or assembly 'file:///C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Sdks\Microsoft.NET.Sdk.Publish\tools\net46\Microsoft.NET.Sdk.Publish.Tasks.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format. Confirm that the declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

Additional information:

  • From within Visual Studio 2017 the solutions built without any errors.
  • None of our projects include any .config transformations files (but do include .config files like web.config), still the error occurs.
  • Visual Studio 2017 Build Tools as well as full Visual Studio 2017 have been installed on the build server and e.g. .NET Core Class Libraries compile fine.
  • Installed .NET Core versions are identical between build server and developer machines.
  • The same errors also happen when using "MsBuild: Build Solution ***.sln" as a build step for all solutions and selecting "MSBuild: MSBuild 15.0".
  • The file mentioned as "Could not load file or assembly: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Sdks\Microsoft.NET.Sdk.Publish\tools\net46\Microsoft.NET.Sdk.Publish.Tasks.dll" does exist in the mentioned path.
  • No tasks are defined within the .csproj files.

Anyone got any insight as to what might cause this?

like image 911
686d7066 Avatar asked Mar 15 '17 09:03

686d7066


1 Answers

Have a look below: https://github.com/aspnet/websdk/pull/174

I have reported the same behavior, and it turns out to be an issue only in the 64bit version of the MSBuild, switching back to the 32bit one worked for me, until this gets fixed.

like image 53
Danko Valkov Avatar answered Oct 14 '22 23:10

Danko Valkov