gpt4 book ai didi

java - 在路径中包含 Java 7 的服务器上使用 Play Framework 2.4+

转载 作者:行者123 更新时间:2023-12-02 03:48:18 24 4
gpt4 key购买 nike

我成功地将我的开发机器上的 Play 2.1 应用程序迁移到 2.4(类路径上有 Java 8),但我现在需要将其传输到只有 java 版本“1.7.0_65”的服务器。

将 Play 应用程序放在服务器上时,是否可以将 Java 8 以 Java 8 jar 的形式包含在 Play 应用程序的 lib/文件夹中作为非托管依赖项?我是否需要告诉 Play 使用这个而不是服务器类路径上的内容,或者它会首先检查 lib/?我是 Play 新手,还有很多东西需要学习 - 很抱歉,如果这是我错过的简单解决方案,并提前感谢您的帮助!

最佳答案

您需要在服务器上安装 Java 8 才能运行 Play 2.4。它是否已安装在服务器上或随您的应用程序一起提供并不重要。您甚至可以在服务器上安装多个不同的 Java 并并行使用它们。

最简单的解决方案是将服务器上的 Java 7 更新为 Java 8。Java 8(应该)向后兼容,所有使用 Java 7 运行的应用程序也应该使用 Java 8 运行。

如果无法选择 Java 更新,您也可以将 Java 8 与您的发行版捆绑在一起。我这样做是为了一个项目,我可以方便地提供与应用程序捆绑在一起的 Java,这样用户就不必额外下载它。

为了捆绑,我使用 activator dist 构建了一个发行版,然后解压缩并手动将 Java 8 JRE 放入/lib、/conf 和/bin 旁边的额外文件夹中。我不会将它放入 lib 文件夹中,因为它并不是真正的库。在启动应用程序之前,您需要设置JAVA_HOME,例如使用 export JAVA_HOME="/path-to-my-application/jre-java-8-folder"。然后像往常一样从 /path-to-my-application/bin/foo.sh 开始。完成。

关于java - 在路径中包含 Java 7 的服务器上使用 Play Framework 2.4+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36132766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com