Dependências Ausentes na Implantação do IronPDF Lambda
IronPDF falha ao inicializar quando implantado no AWS Lambda, produzindo erros semelhantes a:
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.
Dependências nativas ausentes nas implantações Lambda são causadas por uma ou mais das seguintes:
- Permissões ausentes: o papel de execução do Lambda ou o caminho do sistema de arquivos não tem permissões de Leitura/Escrita/Execução exigidas pelo IronPDF.
- Binários nativos ausentes: as bibliotecas nativas do IronPDF não foram incluídas no pacote de implantação.
- Dockerfile incorreto: o Dockerfile não instala as dependências de nível de sistema operacional corretas para a imagem base do Lambda.
Solução
Altere para o pacote NuGet IronPdf.Slim. Ao contrário do pacote completo IronPDF, IronPdf.Slim baixa automaticamente os binários nativos corretos para a imagem base detectada em tempo de execução, eliminando a necessidade de agrupar manualmente binários específicos da plataforma:
// 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")
Teste diretamente no Lambda: não confie em testes locais para verificar a resolução de dependências nativas. A execução do projeto localmente baixa binários compatíveis com Windows ou SO do host em vez dos compatíveis com Lambda, produzindo um falso positivo.
Recupere arquivos de log da AWS para obter detalhes de diagnóstico quando o problema persistir após mudar para IronPdf.Slim. Ative o log antes da primeira chamada do 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
Anexe /tmp/ironpdf.log e a saída de log do Lambda CloudWatch à sua solicitação de suporte. Veja também: implantando IronPDF no AWS Lambda com Docker e como obter arquivos de log do IronPDF na AWS.

