Visual Studio 2015 中的 Azure Web 作业 - 部署不工作,出现错误 "target "MSDeployPublish“项目中不存在。”
Azure Web Job in Visual Studio 2015 - deploy not working with error "target "MSDeployPublish" does not exist in the project."
我使用 Visual Studio 2015 和 azure sdk 2.7.1。我创建了 azure web 作业。当我 运行 部署时出现错误:
目标 "MSDeployPublish" 在项目中不存在。
我在 Visual Studio 2013 年创建了 Web 作业 - 部署成功。我比较了这两个项目(2015 年和 2013 年)——2013 年有这样的代码:
<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.3\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.3\tools\webjobs .targets')" />
我在 2015 年将此代码放入我的项目中,但部署不起作用。我看到了
这个 question,但它对我不起作用。
使用 VS2015,在安装 Microsoft.Web.WebJobs.Publish
NuGet 包时,我在包控制台中注意到 install.ps1 powershell 脚本由于缺少执行权限而抛出错误。经检查,该脚本似乎是要在我要安装到的项目的 .csproj 中添加导入引用。将以下行添加到我的 .csproj 文件中可以解决问题并为我修复上述错误;
<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.6\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.6\tools\webjobs.targets')" />
注意:您的软件包版本可能不同,在这种情况下,将 1.0.6
替换为与您安装的软件包匹配的任何版本。
注意:您的解决方案设置可能不同,在这种情况下,请确保 ..\packages
文件夹的路径正确。
注意:当您 运行 VS 没有管理员权限时会出现此问题。
我运行 visual studio 2015 具有管理员权限。这对我有用。
我只需添加对上述 Microsoft.Web.WebJobs.Publish
NuGet 包的引用即可解决此问题。在我的案例中,无需对 .csproj 文件进行额外修改。我假设这是因为自问题首次发布以来 VS 2015 工具的改进 ;)
我不得不删除 Nuget,以管理员权限重新启动,然后再次添加它以解决问题。
只是想让你知道简单的软件包更新对我有用。
我在一个带有 nuget 包的 project.json 的项目中遇到了这个错误。
当我删除 project.json 并使用 packages.config 时一切正常。
请注意,我在尝试此操作之前确实为 Windows PowerShell 设置了 ExecutionPolicy,(see solution of @Jon Crowell),这可能也是必要的。
如果有人找到解决此问题的方法 project.json 请告诉我!
这对我有用
第 1 步:运行Visual studio 作为管理员
第 2 步:确保在 .csProj 文件中有导入行(在前面的评论中提到过)
第 3 步:删除 Webjob.Publish.Settings.JSON 文件(因为它显示错误)和发布配置文件
第 4 步:部署为 Azure Web 作业
我使用 Visual Studio 2015 和 azure sdk 2.7.1。我创建了 azure web 作业。当我 运行 部署时出现错误:
目标 "MSDeployPublish" 在项目中不存在。
我在 Visual Studio 2013 年创建了 Web 作业 - 部署成功。我比较了这两个项目(2015 年和 2013 年)——2013 年有这样的代码:
<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.3\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.3\tools\webjobs .targets')" />
我在 2015 年将此代码放入我的项目中,但部署不起作用。我看到了
这个 question,但它对我不起作用。
使用 VS2015,在安装 Microsoft.Web.WebJobs.Publish
NuGet 包时,我在包控制台中注意到 install.ps1 powershell 脚本由于缺少执行权限而抛出错误。经检查,该脚本似乎是要在我要安装到的项目的 .csproj 中添加导入引用。将以下行添加到我的 .csproj 文件中可以解决问题并为我修复上述错误;
<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.6\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.6\tools\webjobs.targets')" />
注意:您的软件包版本可能不同,在这种情况下,将 1.0.6
替换为与您安装的软件包匹配的任何版本。
注意:您的解决方案设置可能不同,在这种情况下,请确保 ..\packages
文件夹的路径正确。
注意:当您 运行 VS 没有管理员权限时会出现此问题。
我运行 visual studio 2015 具有管理员权限。这对我有用。
我只需添加对上述 Microsoft.Web.WebJobs.Publish
NuGet 包的引用即可解决此问题。在我的案例中,无需对 .csproj 文件进行额外修改。我假设这是因为自问题首次发布以来 VS 2015 工具的改进 ;)
我不得不删除 Nuget,以管理员权限重新启动,然后再次添加它以解决问题。
只是想让你知道简单的软件包更新对我有用。
我在一个带有 nuget 包的 project.json 的项目中遇到了这个错误。
当我删除 project.json 并使用 packages.config 时一切正常。
请注意,我在尝试此操作之前确实为 Windows PowerShell 设置了 ExecutionPolicy,(see solution of @Jon Crowell),这可能也是必要的。
如果有人找到解决此问题的方法 project.json 请告诉我!
这对我有用
第 1 步:运行Visual studio 作为管理员
第 2 步:确保在 .csProj 文件中有导入行(在前面的评论中提到过)
第 3 步:删除 Webjob.Publish.Settings.JSON 文件(因为它显示错误)和发布配置文件
第 4 步:部署为 Azure Web 作业