在本地机器上调试 Azure Functions 项目

This article was translated from English: Does it need improvement?
Translated
View the article in English

本地运行 Azure 时出现的问题

遇到此问题时常见的异常情况有

  • 为 IronOcr 部署 Tesseract 时出错
  • 查找 "libtesseract-5 "失败
  • 无法找到 "libtesseract-5
  • 定位 Tesseract-5 失败
  • 在 \bin\runtimes\win-x64\native\IronOcr.Native.deployment.json 处定位部署配置文件时出错
  • IronOcr:Missing .traineddata file for 'EnglishBest' which should be located at

本地运行 Azure 函数时的依赖关系问题

本地运行 Azure 时,使用 Azurite (VS2022) 或 Azure 存储模拟器 (VS2019)存储模拟器会创建一个额外的 bin 目录,用于部署。只有 DLL 文件会被复制到该目录,因此需要其他文件的软件将无法运行,并可能出现上述异常。

您可以通过将运行时目录复制到存储仿真器使用的独立 bin 目录来解决这个问题。我们建议将此作为编译后事件来处理 (见下说明) 本地运行时 (因为重新编译/构建会将 bin 目录恢复到原始状态).部署到云时不会遇到这个问题。

  • 问题:在本地运行 Azure 函数项目时,它会创建一个额外的 bin 文件夹,在该文件夹中运行函数。但是,它不会将所有必要文件复制到所述 bin 文件夹中。
  • 举例说明:一个位于 C:\code\azure-functions-test 的项目构建到 C:\code\azure-functions-test\bin\Debug\netcoreapp3.1 目录中。
  • 解决方案:复制_C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes _目录,使其也存在于_C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin_中。
  • 如果出现提示,覆盖任何现有文件

建设后活动:

1.右键单击 Azure Functions 项目,选择属性

2.向下滚动到 "事件 "部分

3.输入 "XCOPY"$ 的 "生成后事件"。(目标目录)运行时" "$(目标目录)bin/runtimes" /S /E /Y /I /R /D`