I know there have been other references to this issue. But I didn\'t upgrade from one version of VS to another. I am currently using VS 2013. The project builds fine, and ha
If you get this MSB4057 error from a WebJob project using "Publish as Azure WebJob" using Visual Studio 2013/update 4 - you may need to update the NuGet package Microsoft.Web.WebJobs.Publish
Check MyWebJob\packages.config and if the version is 1.0 you need version 1.02 or higher. From the package manager console run
Install-Package Microsoft.Web.WebJobs.Publish -Version 1.0.2
With VS 2013 Update 4. There seems to be issues with the template of a Webjob project so that the reference to webjobs.targets is wrong, even though you've installed the Microsoft.Web.WebJobs.Publish package.
Make sure There Import statement at the bottom of of the project is correct in terms of the path, I tested twice and found it was malformed.
<Import Project="..\..\packages\Microsoft.Web.WebJobs.Publish.1.0.2\tools\webjobs.targets" Condition="Exists('..\..\packages\Microsoft.Web.WebJobs.Publish.1.0.2\tools\webjobs.targets')" />
Also, better avoid using the below, since it binds you to a specific VS version.
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
Just run the below on the project you want to publish ( and make sure your VisualStudio is running as "Administrator" )
install-package Microsoft.Web.WebJobs.Publish
Adding the lines below to my .csproj file seems to solve the same error for me:
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
As part of trying to resolve the issue, I've also installed the MSBuild.Microsoft.VisualStudio.Web.targets Nuget Package. But I'm still not sure it was necessary in order to resolve the issue.
Just bumped into this exact error with VS 2015 Update 3. The latest Microsoft.Web.WebJobs.Publish
was installed, and I tried unstalling and re-installing for good measure. Still didn't work but there was an error on install that I didn't see the first time around:
install.ps1 cannot be loaded because running scripts is disabled on this system.
This is something that most who have ever run a PowerShell script have run into at one time or another and easy to fix (solution is here), but the error message itself is easy to miss.
In order to fix the issue for Visual Studio Enterprise 2015 Update 3, I had to install the following packages and edit the Web job's project file as follows.
STEP 01:Install Packages(Run VS as Administrator for script execution)
1. install-package **MSBuild.Microsoft.VisualStudio.Web.targets**
2. install-package **Microsoft.Web.WebJobs.Publish -Version 1.0.2**
STEP 02: Edit WebJob Project File(Unload the project from VS and Edit/Save .csproj then reload)
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>