ローカルマシンでAzure Functionsプロジェクトのデバッグ

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

ローカルでAzureを実行する際の問題

この問題に遭遇したときによく見られる例外は以下の通りである:

  • Tesseract for IronOCR (アイアンOCR)のデプロイ時のエラーについて
  • libtesseract-5' が見つかりません。
  • libtesseract-5' が見つからない。
  • テッセラクト-5が見つからない
  • Error while locating deployment configuration file at ㊦binruntimes㊦win-x64㊦native㊦IronOCR.Native.deployment.json
  • IronOCR (アイアンOCR):'EnglishBest'の.traineddataファイルが見つからない。

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

ローカルでAzureを実行する場合、Azuriteを使用する (VS2022) またはAzure Storage Emulator (VS2019)、ストレージエミュレーターがデプロイに使用する追加のbinディレクトリが作成されます。 このディレクトリにはDLLファイルのみがコピーされるため、追加ファイルを必要とするソフトウェアは機能せず、上記の例外が発生する可能性があります。

この問題を解決するには、ランタイムディレクトリをストレージエミュレータで使用される別のbinディレクトリにコピーしてください。 建設後のイベントとして行うことをお勧めします。 (手順は下記を参照) ローカルで実行する時 (再コンパイル/ビルドを行うと、binディレクトリが元の状態に戻ります。). クラウドへのデプロイ時にこの問題は発生しません。

  • 問題:Azure Functionプロジェクトをローカルで実行すると、追加の_bin_フォルダが作成され、そこから関数が実行されます。 しかし、必要なすべてのファイルがその bin フォルダにコピーされるわけではありません。
  • 例をビルドする_C:㊦のプロジェクト。
  • 解決方法C:㊟Codeazure-functions-testbin㊟Debug㊟netcoreapp3.1runtimes㊟ディレクトリをコピーして、C:㊟Codeazure-functions-testbin㊟Debug㊟netcoreapp3.1bin 内にも存在するようにする。
  • 上書きの確認が表示された場合、既存のファイルを上書きしてください。

    ポスト・ビルド・イベント:

  1. Azure Functionsプロジェクトを右クリックし、プロパティを選択します。

  2. イベントセクションまでスクロールダウン

  3. ビルド後のイベントにXCOPY "$を入力する。(ターゲットディレクトリ)ランタイム" "$(ターゲットディレクトリ)bin/runtimes" /S /E /Y /I /R /D`