gpt4 book ai didi

java - 如何强制 Play 2.1 针对其他 Java 版本进行编译

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:22 26 4
gpt4 key购买 nike

我使用 Java 1.7 开发了一个 Play 应用程序。现在我需要针对版本 1.6 编译它,因为它将在另一台仍然使用 1.6 的主机上执行(我无法更改它)

所以我将启动脚本 play 复制到 play-1.6 并以某种方式更改它,以便它使用 JDK 1.6 版(我已将其存储在我的电脑)

在任何目录中执行此修改后的脚本时,我都会得到所需的信息行

play! 2.1.0 (using Java 1.6.0_38 and Scala 2.10.0), http://www.playframework.org

当我在我的项目目录中执行相同的脚本时,我得到了一行

play! 2.1.0 (using Java 1.7.0_09 and Scala 2.10.0), http://www.playframework.org

该项目使用 1.7 版的信息存储在哪里?我如何强制它针对 1.6 版进行编译?

更新 1

Maxime Calmels 建议执行clean 以最终删除已编译的配置文件。不幸的是,这没有帮助。

更新 2

当我在游戏控制台中输入 java-home 时,我收到了消息

[info] None

所以我创建了一个文件build.sbt并添加了内容

javaHome := Some(file("/usr/java/jdk1.6.0_38"))

当启动游戏控制台并输入 java-home 时,我得到了这条线

[info] Some(/usr/java/jdk1.6.0_38)

但是 play 仍然 针对版本 1.7 进行编译,所以也没有运气。

更新 3

我让它工作了......但是 仅通过将 Play 和我的项目复制到应该运行项目的主机并在那里编译它。这不是一个非常优雅的解决方案,我仍然想知道如何在我的机器上本地完成。

最佳答案

无论您在哪里安装 Play,您都应该能够通过将其替换为以下内容来更改“Play ”脚本:

if [ -z "$JAVA_HOME" ]; then
JAVA="java"
else
JAVA="$JAVA_HOME/bin/java"
fi

这条新线:

JAVA="/TheFullJavaPath/bin/java"

应该可以了。然后该脚本将使用该版本。我建议将其命名为您必须 Play -java-1.X 或其他名称。

关于java - 如何强制 Play 2.1 针对其他 Java 版本进行编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15253782/

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