33

我试图发布我的网站以及一些 WebJobs,但是在 Azure 网站上创建网站和工作之后,我在 VS.NET 2013 上看到一个错误,上面写着:

Error   948 An error occurred while creating the WebJob schedule: No website could be found which matches the WebSiteName [mysitename] and WebSiteUrl [http://mysitename.azurewebsites.net] supplied

我的网站有 2 个 WebJobs,1 个连续运行并且它已创建并运行,但需要按计划触发的那个有此问题。

关于这里可能有什么问题的任何想法?

编辑 1

只是想补充一点,计划作业被创建为“按需”

这是我正在使用的发布设置:

{
  "$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
  "webJobName": "ArchiveShipments",
  "startTime": "2015-01-11T00:00:00+05:30",
  "endTime": null,
  "jobRecurrenceFrequency": "Day",
  "interval": 1,
  "runMode": "Scheduled"
}

顺便说一句,我应用 AzureSDK 之后。2.5 我在发布时没有看到任何错误,但没有创建计划的 WebJob。

4

10 回答 10

51

对我来说,这发生在我从部署到一个 Azure 帐户切换到另一个帐户时。在 Visual Studio 中,打开/展开服务器资源管理器侧窗口,右键单击 Azure,选择“连接到 Microsoft Azure 订阅...”。系统将要求您注销并使用新凭据登录。 在此处输入图像描述

于 2015-08-06T13:10:48.703 回答
10

如果您在从 PowerShell 发布时收到此错误,这可能意味着您没有登录到您的 azure 订阅或登录到错误的订阅。如果浏览器未提示您输入凭据,则可能是使用了错误的订阅。如果不要求登录,请清除 cookie 并重试。

于 2015-03-25T22:54:53.367 回答
2

我在尝试将我的网络作业发布到部署槽时遇到了这个问题。

网络作业已发布,但在尝试连接日程时未找到该网站。

我可以通过门户进行 1 次手动发布并在那里设置时间表来解决这个问题。之后我可以从 VS 发布,而日程安排将保持不变。

于 2016-03-23T13:35:17.337 回答
1

我花了一整天的时间在这上面。我的解决方案是通过上传 ZIP 并根据需要安排它来手动部署 Web 作业。然后,在 VS 中,我确实将现有项目添加为 Web 作业并发布网站按预期更新了预定的 Web 作业。

于 2015-03-16T20:49:19.177 回答
1

在最近的更新之后,情况发生了变化。我无法发布到我有预定工作的任何订阅。经过大量挖掘,解决方案如下: - 右键单击​​解决方案并管理解决方案的 NuGet 包 - 将所有 Web 发布模块更改为版本 1.0.3

发布。问题解决了。

于 2016-02-12T13:16:36.523 回答
1

在这里尝试了一切,但仍然遇到同样的问题,但我设法通过执行以下操作来解决:

我有一个名为Microsoft.Web.WebJobs.Publishinstalled 的包,它运行的是旧版本 ( 1.0.3)。我更新到最新的,目前1.10.12,然后第一次发布应用程序和 webjob/schedule。

于 2016-07-15T11:45:15.703 回答
1

我在 VS2017 中再次遇到了这个问题,根本原因是VS Azure Scheduler 集成功能的弃用。根据 David Ebbo 在链接线程中的建议,我将我的 webjobs 转换为使用CRON 调度功能,并且现在可以按预期发布。请注意,必须在应用程序上启用Always On设置。

如果您遇到这种情况,可以使用更多调试选项:

  • 确保使用了正确的发布配置文件 ( pubxml) 文件。我为同一个 webjob 有多个发布配置文件,并尝试错误地使用错误的发布配置文件。

  • 我建议首先尝试一个一个地单独发布网络作业(而不是在网站旁边发布它们)。

  • 如果您无法发布要发布的网络作业,请删除其Properties\PublishProfiles文件夹并尝试再次发布 - 您会看到一个 VS 向导,它应该可以让您进行排序(它将pubxml正确地重新创建文件)。

于 2017-07-03T00:30:39.390 回答
0

将 nuget 包更新到最新的更新,在我的例子中是 1.10.12,成功了。

然而,视觉工作室没有设法删除以前的包。为此,我必须重新启动 Windows,然后在打开 Visual Studio 之前,删除包含旧版本 webjobs.publish 的文件夹。

这对我有用!

于 2017-03-14T13:27:12.543 回答
0

尝试更新到 Azure SDK 的 2.9 版,它修复了一个相关问题:

修复了与 Scheduled WebJobs 相关的问题,其中身份验证信息未能传递到 Scheduler 供应过程

https://www.visualstudio.com/en-us/news/vs2015-update2-vs.aspx

编辑:

我最终放弃了使用这个调度器,转而使用 Kudu 调度器(Internal WebJob Scheduler)。请参阅:https ://github.com/projectkudu/kudu/wiki/Web-jobs#scheduling-a-triggered-webjob

它实际上更容易设置。您需要做的就是将 settings.json 文件添加到 webjob 中,其中包含以下内容:{"schedule": "the schedule as a cron expression"}

此处讨论了使用 Azure 调度程序与 Kudu 调度程序的优缺点:http: //blog.amitapple.com/post/2015/06/scheduling-azure-webjobs/#.Vz4sk5ErJaQ

该博客文章中未提及的一个重要限制是,调度程序的免费层不支持创建比每小时更频繁的调度(如果您没有故意更改它,您可能正在使用它,因为它与应用程序是分开的服务层)。这就是最终驱使我使用 Kudu 调度程序的原因,因为我需要安排我的工作每 15 分钟运行一次

于 2016-04-12T01:02:31.827 回答
0

我设法通过删除我的网络 csproj 文件中的旧引用来消除此错误

<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.7\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.7\tools\webjobs.targets')" />

我已经升级到Microsoft.Web.WebJobs.Publish.2.0.0也被引用的更新包。

于 2020-05-07T07:29:05.103 回答