Dépendances manquantes dans le déploiement IronPDF Lambda
IronPDF ne peut pas initialiser lorsqu'il est déployé sur AWS Lambda, produisant des erreurs similaires à :
IronPDF failed to start: required native binaries not found at the expected path.
Unable to load shared library or one of its dependencies.
Error: Required IronPDF native dependencies were not found in the deployment package.
Les dépendances natives manquantes dans les déploiements Lambda sont causées par un ou plusieurs des éléments suivants :
- Autorisations manquantes : le rôle d'exécution Lambda ou le chemin du système de fichiers manque de permissions de lecture/écriture/exécution requises par IronPDF.
- Binaries natifs absents : les bibliothèques IronPDF natives n'ont pas été incluses dans le package de déploiement.
- Dockerfile incorrect : le Dockerfile n'installe pas les dépendances OS appropriées pour l'image de base Lambda.
Solution
Passez au package NuGet IronPdf.Slim. Contrairement au package complet IronPDF, IronPdf.Slim télécharge automatiquement les binaires natifs corrects pour l'image de base détectée au moment de l'exécution, éliminant ainsi le besoin d'inclure manuellement des binaires spécifiques à la plateforme :
// NuGet: IronPdf.Slim
// IronPdf.Slim selects and downloads the appropriate native runtime
// for the Lambda execution environment automatically.
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY");
var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Hello from Lambda</h1>");
pdf.SaveAs("/tmp/output.pdf");
// NuGet: IronPdf.Slim
// IronPdf.Slim selects and downloads the appropriate native runtime
// for the Lambda execution environment automatically.
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY");
var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Hello from Lambda</h1>");
pdf.SaveAs("/tmp/output.pdf");
' NuGet: IronPdf.Slim
' IronPdf.Slim selects and downloads the appropriate native runtime
' for the Lambda execution environment automatically.
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY")
Dim renderer As New ChromePdfRenderer()
Dim pdf = Await renderer.RenderHtmlAsPdfAsync("<h1>Hello from Lambda</h1>")
pdf.SaveAs("/tmp/output.pdf")
Test direct sur Lambda : ne vous fiez pas aux tests locaux pour vérifier la résolution des dépendances natives. L'exécution du projet localement télécharge des binaries compatibles Windows ou compatibles avec l'OS hôte au lieu de ceux compatibles Lambda, produisant un faux positif.
Récupérez les fichiers journaux depuis AWS pour obtenir des détails de diagnostic lorsque le problème persiste après le passage à IronPdf.Slim. Activez la journalisation avant le premier appel IronPDF :
IronPdf.Logging.Logger.EnableDebugging = true;
IronPdf.Logging.Logger.LogFilePath = "/tmp/ironpdf.log";
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
IronPdf.Logging.Logger.EnableDebugging = true;
IronPdf.Logging.Logger.LogFilePath = "/tmp/ironpdf.log";
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
Imports IronPdf.Logging
Logger.EnableDebugging = True
Logger.LogFilePath = "/tmp/ironpdf.log"
Logger.LoggingMode = Logger.LoggingModes.All
Joignez /tmp/ironpdf.log et la sortie du journal Lambda CloudWatch à votre demande de support. Voir aussi : déployer IronPDF sur AWS Lambda avec Docker et comment obtenir les fichiers journaux IronPDF dans AWS.

