1

我需要wdiff从 JAR 文件运行。在本地,我通过调用一个进程来执行此操作,该进程运行wdiff手动安装在 Linux 服务器上或wdiff.exe位于 Windows 上方便的附近文件夹中的二进制文件。

现在,我需要部署到 AWS Lambda,并且不能依赖wdiff(或其依赖项diff)来安装。那么我怎样才能wdiff在 Lambda 上运行呢?

我想这里有两个可能的问题/解决方案:

  1. 是否可以在 AWS Lambda 容器中包含第三方二进制文件?
  2. 是否可以在 JAR 文件中捆绑可执行二进制文件并从代码中执行它?
4

1 回答 1

1

使用您需要的二进制文件创建一个Lambda 层。您可以/usr/bin/wdiff从类似于AWS Lambda one的运行时获取。在您的情况下,几乎任何 linux 都可以。如果diff没有安装任何其他依赖项,则将其放入同一层。

然后您可以将 jar 中的二进制文件作为通常的外部程序调用,例如使用ProcessBuilder

于 2020-02-25T13:23:40.940 回答