Azure 网站的项目中不存在目标“ResolveWebJobFiles”
The target “ResolveWebJobFiles” does not exist in the project in Azure Website
我有一个 Windows Azure 项目,包含
- ASP.NET 项目(使用 NancyFX)部署为 Azure 网站
- 业务逻辑class库
- 单元测试class库
- 2 个控制台应用程序
我希望将这 2 个控制台应用程序部署为 Azure 网站的 Azure WebJobs。所以我右击 ASP.NET 项目并选择 Add |作为 Azure WebJob 的现有项目,并按正确的时间表添加了两个控制台应用程序。
一切似乎都很好,2 个控制台应用程序现在包含一个带有时间表的 JSON,并且 ASP.NET 项目包含一个带有 WebJobs 定义的 JSON。所有项目构建都很好。
问题是,当我尝试将 ASP.NET 项目部署到 Azure 时,我得到
The target “ResolveWebJobFiles” does not exist in the project
当作者通过添加
解决了这个问题时,我找到了this article
<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')" />
到他的 csproj 文件,但是我的 ASP.NET 项目的 csproj 文件已经包含这个导入。
知道问题出在哪里吗?
我也运行喜欢这个。更新我的解决方案中的所有包后,我开始得到这个。 <import />
在那里,但指向不同的版本。所以也检查一下。
即使我也遇到过这个问题。我在我的网络作业中重新安装了以下软件包来解决它
包 id="Microsoft.Web.WebJobs.Publish" 版本="1.0.2"
检查您的 webjob 项目 Properties 文件夹中是否有此文件:
webjob-publish-settings.json
如果没有,请使用此内容创建它,仅更改 webJobName(目前)
{
"$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
"webJobName": "MyWebJobName",
"startTime": "2014-12-09T00:00:00-08:00",
"jobRecurrenceFrequency": "Hour",
"interval": 1,
"runMode": "Scheduled",
"stopping_wait_time": 3600
}
我最近收到此错误,发现原因是 [WebProject]/Properties/webjobs-list.json 包含对已从解决方案中删除的旧 webjob 的引用。从 json 中删除引用解决了问题。
在我的例子中是这个文件,它有 1 个与之关联的无效网络作业,将其删除并开始工作
webjobs-list.json
一个主要原因可能是属性中缺少 "webjob-publish-settings.json" 文件。
请仔细检查此文件是否存在并包含在您的项目中。
还值得检查的是 WebJob 项目的 .net 版本与您的 Web 应用程序!
所述
A WebJobs-enabled project has the following items added to it:
- The Microsoft.Web.WebJobs.Publish NuGet package.
- A webjob-publish-settings.json file that contains deployment and scheduler settings.
它明确表示需要引用 Microsoft.Web.WebJobs.Publish
Nuget 包的项目是 Webjob-enabled 项目应用程序,而不是 Web 应用程序。 Web 应用程序只需要 webjobs-list.json
个文件。
webjob 控制台应用程序也可能有一个 webjob-publish-settings.json
文件
但仅限于非连续作业
在 Kudu 中(在 Web 应用程序管理页面的“高级工具”下,在“开发工具”下),在“调试控制台”下,select“Powershell”,然后导航到“站点”文件夹,然后是“存储库”文件夹。
在命令行输入命令“dotnet restore”,然后重新部署。
编辑:截至 2022 年 1 月 26 日仍然有效。
我有一个 Windows Azure 项目,包含
- ASP.NET 项目(使用 NancyFX)部署为 Azure 网站
- 业务逻辑class库
- 单元测试class库
- 2 个控制台应用程序
我希望将这 2 个控制台应用程序部署为 Azure 网站的 Azure WebJobs。所以我右击 ASP.NET 项目并选择 Add |作为 Azure WebJob 的现有项目,并按正确的时间表添加了两个控制台应用程序。
一切似乎都很好,2 个控制台应用程序现在包含一个带有时间表的 JSON,并且 ASP.NET 项目包含一个带有 WebJobs 定义的 JSON。所有项目构建都很好。
问题是,当我尝试将 ASP.NET 项目部署到 Azure 时,我得到
The target “ResolveWebJobFiles” does not exist in the project
当作者通过添加
解决了这个问题时,我找到了this article<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')" />
到他的 csproj 文件,但是我的 ASP.NET 项目的 csproj 文件已经包含这个导入。
知道问题出在哪里吗?
我也运行喜欢这个。更新我的解决方案中的所有包后,我开始得到这个。 <import />
在那里,但指向不同的版本。所以也检查一下。
即使我也遇到过这个问题。我在我的网络作业中重新安装了以下软件包来解决它
包 id="Microsoft.Web.WebJobs.Publish" 版本="1.0.2"
检查您的 webjob 项目 Properties 文件夹中是否有此文件: webjob-publish-settings.json
如果没有,请使用此内容创建它,仅更改 webJobName(目前)
{
"$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
"webJobName": "MyWebJobName",
"startTime": "2014-12-09T00:00:00-08:00",
"jobRecurrenceFrequency": "Hour",
"interval": 1,
"runMode": "Scheduled",
"stopping_wait_time": 3600
}
我最近收到此错误,发现原因是 [WebProject]/Properties/webjobs-list.json 包含对已从解决方案中删除的旧 webjob 的引用。从 json 中删除引用解决了问题。
在我的例子中是这个文件,它有 1 个与之关联的无效网络作业,将其删除并开始工作
webjobs-list.json
一个主要原因可能是属性中缺少 "webjob-publish-settings.json" 文件。
请仔细检查此文件是否存在并包含在您的项目中。
还值得检查的是 WebJob 项目的 .net 版本与您的 Web 应用程序!
A WebJobs-enabled project has the following items added to it:
- The Microsoft.Web.WebJobs.Publish NuGet package.
- A webjob-publish-settings.json file that contains deployment and scheduler settings.
它明确表示需要引用 Microsoft.Web.WebJobs.Publish
Nuget 包的项目是 Webjob-enabled 项目应用程序,而不是 Web 应用程序。 Web 应用程序只需要 webjobs-list.json
个文件。
webjob 控制台应用程序也可能有一个 webjob-publish-settings.json
文件
但仅限于非连续作业
在 Kudu 中(在 Web 应用程序管理页面的“高级工具”下,在“开发工具”下),在“调试控制台”下,select“Powershell”,然后导航到“站点”文件夹,然后是“存储库”文件夹。
在命令行输入命令“dotnet restore”,然后重新部署。
编辑:截至 2022 年 1 月 26 日仍然有效。