IronOCR を使用してローカル マシンで 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: 'EnglishBest' の .traineddata ファイルが見つかりません。このファイルは、

ローカルでAzure Functionsを実行する際の依存関係の問題

Azureをローカルで実行する際、Azurite (VS2022) やAzure Storage Emulator (VS2019)を使用すると、Storage Emulatorがデプロイに使用する追加のbinディレクトリが作成されます。 このディレクトリにはDLLファイルのみがコピーされるため、追加のファイルを必要とするソフトウェアは動作しないか、上記の例外をスローする可能性があります。

Storage Emulatorが使用する個別の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 "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
    XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
    SHELL

    -説明:

    • XCOPYはファイルとディレクトリ ツリーをコピーするために使用されます。
    • $(TargetDir)runtimes 、ランタイム ファイルが最初にコンパイルされるソース ディレクトリです。
    • $(TargetDir)bin\runtimesは、アプリケーションがローカルで実行されるときのランタイム ファイルの保存先ディレクトリです。
    • オプション:
      • /S空のディレクトリを除くディレクトリとサブディレクトリをコピーします。
      • /E空のサブディレクトリも含め、すべてのサブディレクトリをコピーします。
      • /Y既存のファイルを上書きするかどうかの確認を抑制します。
      • /I 、宛先が存在せず、複数のファイルをコピーする場合、宛先はディレクトリであると想定します。
      • /Rは読み取り専用ファイルを上書きします。
      • /D 、コピー先でより新しいファイルまたはコピー先に存在しないファイルのみをコピーします。

File R3HdEFPHAL related to ビルド後のイベント手順

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 5,167,857 | Version: 2025.11 リリース