当前位置: 首页 > 知识库问答 >
问题:

尝试在linux中构建Azure函数应用程序,以下错误返回“未找到作业函数。请尝试将作业类和方法公开”

沙岳
2023-03-14

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

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

共有1个答案

南宫天逸
2023-03-14

尝试这种错误的几个选项:

>

  • 您在哪里运行“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。函数如果不是,则示例中的代码库有时具有较低版本

    尝试这些,看看它是否有效,如果没有,请提供代码存储库链接将推进它。

  •  类似资料:
    • 我已经在Visual Studio 2017中创建了一个Azure Function应用程序,并且可以使用Visual Studio发布功能毫无问题地将其发布到Azure(右键单击项目,然后选择发布)。 由于从Visual Studio的开发人员实例部署不是理想的持续集成策略,我已经与TeamCity和Octopus创建了一个部署管道,其中TeamCiti构建了Azure功能应用程序,Octopu

    • 我正在运行本地m/c代码。 在上面的代码中,我试图在条目上触发Topic的订阅。 但当我运行代码时,它给了我一个错误 找不到函数。尝试公开作业类和方法 我在public Function类中尝试了相同的方法,但不起作用。 但是当我将ServiceBusTrigger更改为QueueTrigger时,它起作用了。 我已经正确设置了下面的配置。 我哪里说错了?

    • 我很感激有几个这样的问题,但我很确定我已经经历了一切,已经到了“到底是什么”的地步。 我在Azure上推出了一个v3函数,但是没有成功地将这个函数发布到.....功能。我担心Azure CLI任务会破坏一些东西。 我函数的启动是: 以及其中的函数: 我相当确定我已经安装了所有的软件包。通过网络浏览到函数似乎是可以的。 Log Analytics 的自定义日志中也不会显示任何内容。不过,该表确实已创

    • 我正在探索在上运行函数应用程序。这是我到目前为止所做的。 下面是新的< code>Program类,它取代了< code>Startup类: 我还有一个非常简单的HTTP触发函数: 我已经修改了我的 ,以指示函数必须在隔离模式下运行: 我使用以下参数启动函数: 问题 当我启动应用程序时,我收到以下警告消息: 我相信我在处于隔离进程中。我错过了什么? 更新 以下是版本信息:

    • 我已经创建了一个.Net 5 Azure函数应用程序项目,并使用程序.cs文件遵循隔离过程,并且它工作正常。现在我想将框架版本从dotnet 5.0更改/升级到6.0,因此更改了项目属性页中的版本,并更改了csproj文件中的版本。并将属性也从 Function 更改为 FunctionName,但它在运行时在 cmd 中显示以下错误。 添加它显示以下进程窗口超过 1 小时,当我运行我的解决方案。

    • 我正在使用Azure WebJob,但现在收到以下错误消息: 未找到任何函数。尝试使作业类公开,使方法公开为静态。 我的代码很简单: 此外,我从我的调试文件夹创建一个zip文件并上传它,并且将作业配置为连续运行。