Как сделать консольную команду доступной для AWS Lambda, написанной на Java - PullRequest
0 голосов
/ 06 мая 2019

Я хотел бы запустить фрагмент кода Java в AWS Lambda, который вызывает команду оболочки (в моем случае wkhtmltopdf).Я не могу понять, как упаковать Lambda для этого:

Cannot run program "wkhtmltopdf": error=2, No such file or directory: java.io.IOException

Я смог заставить его работать с Node.js.Я предполагаю, что это связано с тем, что «пакет» извлекается после загрузки, тогда как в Java jar остается сжатым, и поэтому исполняемый файл недоступен из java.lang.ProcessBuilder.

1 Ответ

0 голосов
/ 06 мая 2019

Мне удалось решить эту проблему, используя Лямбда-слои AWS .Упакуйте bin/wkhtmltopdf в zip-файл и создайте слой, используя что-то вроде линий:

aws lambda publish-layer-version --layer-name wkhtmltopdf \
--description "wkhtmltopdf executable" \
--zip-file fileb://$(pwd)/wkhtmltopdf.zip \
--compatible-runtimes java8

После этого я смог выбрать и применить слой (не забудьте нажать «Сохранить»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...