c# - 错误返回 "No job functions found. Try making your job classes and methods public"后,尝试在 Linux 中构建 Azure 函数应用程序

标签 c# linux azure .net-core azure-functions

当我尝试在 Linux(Ubuntu 18.04)中构建 azure 函数时,返回以下错误。 以下是我在此过程中遵循的步骤。从 git 克隆存储库后。

dotnet build
func start --build

然后输出返回,

[5/29/19 6:46:18 AM] No job functions found. Try making your job classes and methods public. If you're using binding extensions (e.g. Azure Storage, ServiceBus, Timers, etc.) make sure you've called the registration method for the extension(s) in your startup code (e.g. builder.AddAzureStorage(), builder.AddServiceBus(), builder.AddTimers(), etc.).
[5/29/19 6:46:18 AM] Host initialized (49ms)
[5/29/19 6:46:18 AM] Host started (55ms)
[5/29/19 6:46:18 AM] Job host started
Hosting environment: Production
Content root path: /media/ishara/Data/MAS/SAGE/SageShipmentFunctions/SageShipmentFunctionsApp
Now listening on: http://0.0.0.0:7071
Application started. Press Ctrl+C to shut down.
[5/29/19 6:46:23 AM] Host lock lease acquired by instance ID '000000000000000000000000CAE400CD'.

下面是关于我的系统的信息,

.NET Core SDK (reflecting any global.json):
 Version:   2.2.300
 Commit:    73efd5bd87

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  18.04
 OS Platform: Linux
 RID:         ubuntu.18.04-x64
 Base Path:   /usr/share/dotnet/sdk/2.2.300/

Host (useful for support):
  Version: 2.2.5
  Commit:  0a3c9209c0

.NET Core SDKs installed:
  2.2.300 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

最佳答案

尝试解决此类错误的几个选项:

  • 您从哪里运行“func start --build”? 确保从包含构建工件的文件夹中运行它,例如bin\Debug\net461.

  • 如果您是从另一个项目或版本转换过来的。

在 VS csproj 文件中,确保存在 AzureFunctionsVersion

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <AzureFunctionsVersion>v2</AzureFunctionsVersion>
</PropertyGroup>
...etc
  • 如果不是,您应该升级到最新的 Microsoft.NET.Sdk.Functions,有时示例中的代码库版本较低。

尝试这些,看看它是否有效,如果无效,请提供代码库链接,以便继续执行。

关于c# - 错误返回 "No job functions found. Try making your job classes and methods public"后,尝试在 Linux 中构建 Azure 函数应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56354856/

相关文章:

c# - WPF:从列表<Geometry>中绘制几何图形

linux - 如何将参数传递给 sh 从 stdin 读取的脚本?

azure - 如何使用 PowerShell 创建启用分析存储的 Cosmos DB Sql 容器?

azure - 在 Azure 中创建后等待机器人准备就绪

azure - 并行地为多个队列调用相同的queuetrigger函数

c# - IEnumerable——非空集合如何同时为空?

c# - 无法发送带有分发证书的 APNS 消息

c# - Unity粒子系统: Change Emitter Velocity with Script

linux - 处理来自 LPC 连接设备的 SERIRQ 中断

linux - 无法自定义tomcat7 404错误页面