使用 IronOCR 在本地机器上调试 Azure 函数

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

在本地运行Azure时遇到的问题

常见的异常包括:

  • 为 IronOcr 部署 Tesseract 时出错
  • 查找 "libtesseract-5 "失败
  • 无法找到 libtesseract-5
  • 未能找到宇宙魔方-5
  • 在 \bin\runtimes\win-x64\native\IronOcr.Native.deployment.json 查找部署配置文件时出错
  • IronOcr:缺少位于的 'EnglishBest' .traineddata 文件

在本地运行Azure Functions时遇到的依赖问题

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

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

  • 问题:在本地运行Azure Function项目时,它会创建一个额外的_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 中,使其在那里也存在。
  • 如果提示,请覆盖任何现有文件。

    File V9pZPFGwDl related to 在本地运行Azure Functions时遇到的依赖问题

    生成后事件:

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

  2. 向下滚动到事件部分

  3. 输入一个后期构建事件 XCOPY "$(目标目录)运行时" "$(目标目录)bin/runtimes" /S /E /Y /I /R /D

    File R3HdEFPHAL related to 在本地运行Azure Functions时遇到的依赖问题