Debugging Azure Functions on Local Machine with IronOCR

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

Problèmes lors de l'exécution locale d'Azure

Les exceptions les plus courantes sont les suivantes :

  • Erreur lors du déploiement de Tesseract pour IronOcr
  • Échec de la localisation de 'libtesseract-5'
  • Impossible de localiser 'libtesseract-5'
  • Échec de la localisation de Tesseract-5
  • Erreur lors de la localisation du fichier de configuration du déploiement à l'adresse suivante : IronOcr.Native.deployment.json
  • IronOcr : Fichier .traineddata manquant pour 'EnglishBest' qui devrait se trouver à l'adresse suivante

Problème avec les dépendances lors de l'exécution locale d'Azure Functions

Lors de l'exécution locale d'Azure, en utilisant Azurite (VS2022) ou l'Azure Storage Emulator (VS2019), un répertoire bin supplémentaire est créé que l'émulateur de stockage utilise pour le déploiement. Seuls les fichiers DLL sont copiés dans ce répertoire, de sorte que les logiciels qui nécessitent des fichiers supplémentaires ne fonctionneront pas et risquent de générer l'exception susmentionnée.

Vous pouvez résoudre ce problème en copiant le répertoire des runtimes dans le répertoire bin séparé utilisé par l'émulateur de stockage. Nous recommandons d'effectuer cette traduction en tant qu'événement post-construction (voir ci-dessous pour les instructions) lors d'une exécution locale (car recompiler/construire ramènera le répertoire bin à son état d'origine). Vous ne rencontrerez pas ce problème lors du déploiement dans le nuage.

  • Problème:Lorsqu'un projet Azure Function est exécuté localement, il crée un dossier bin supplémentaire à partir duquel il exécute la fonction. Cependant, elle ne copie pas tous les fichiers nécessaires dans le dossier bin.
  • Exemple:Un projet à C:\code\Nazure-functions-test qui se construit à C:\Ncode\Nazure-functions-test\NDebug\Nnetcoreapp3.1
  • Solution: Copier le répertoire C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes pour qu'il existe également dans C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin
  • Écrasez les fichiers existants si vous y êtes invité

File V9pZPFGwDl related to Problème avec les dépendances lors de l'exécution locale d'Azure Functions

Étapes de l'événement post-construction

  1. Cliquez avec le bouton droit de la souris sur le projet Azure Functions et sélectionnez Propriétés.
  2. Faites défiler vers le bas jusqu'à la section Événements.
  3. Entrez une commande d'événement post-construction qui copiera tous les fichiers requis dans le bon répertoire :

    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
    • Explication:
      • XCOPY est utilisé pour copier des fichiers et des arborescences de répertoires.
      • $(TargetDir)runtimes est le répertoire source où les fichiers d'exécution sont initialement compilés.
      • $(TargetDir)bin\runtimes est le répertoire de destination des fichiers d'exécution lorsque l'application est exécutée localement.
      • Options possibles :
      • /S copie les répertoires et les sous-répertoires à l'exception des répertoires vides.
      • /E copie tous les sous-répertoires, y compris les sous-répertoires vides.
      • /Y supprime la confirmation de l'écrasement des fichiers existants.
      • /I si la destination n'existe pas et si l'on copie plus d'un fichier, on suppose que la destination doit être un répertoire.
      • /R écrase les fichiers en lecture seule.
      • /D ne copie que les fichiers qui sont plus récents ou qui sont absents de la destination.

File R3HdEFPHAL related to Étapes de l'événement post-construction

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 5,044,537 | Version : 2025.11 vient de sortir