在 dist 应用程序中加载库,这些库在构建时是未知的

Load libraries in dist application, which are not known at build time

我们想将额外的第三方库(我们在构建时不知道其名称)部署到 dist 应用程序中,而不需要重建它。 Play 应该会在启动时自动加载它们。

我们试图将它们复制到 lib 文件夹,但没有用。我们看到启动脚本中有一个生成的类路径,它非常严格(没有通配符)。我们能以某种方式告诉 play 加载 lib 文件夹中的所有库吗?还是我们必须 post 修改生成的启动脚本并将我们的库添加到类路径字符串中?

您可以将其添加到您的 build.sbt 文件中:

import com.typesafe.sbt.packager.Keys._

scriptClasspath := Seq("*")

这将使生成的脚本使用通配符而不是指定每个 jar。请注意,如果罐子的顺序很重要,这可能会给您带来问题...

issue 与 Windows 中的命令名称过长有关,尽管与您的问题没有直接关系,但建议一些可能适用于您的问题的解决方法。