java6 是我们 ubuntu 机器上的默认 java,我在另一个目录中有 java7,其中 JAVA_HOME 指向 java7。
使用 sudo -E 在非 Play 项目文件夹中维护 JAVA_HOME 环境变量:
$ sudo -E /usr/share/play/play
_ _
_ __ | | __ _ _ _| |
| '_ \| |/ _' | || |_|
| __/|_|\____|\__ (_)
|_| |__/
play! 2.1.1 (using Java 1.7.0_17 and Scala 2.10.0), http://www.playframework.org
This is not a play application!
好的太好了,play 使用的是 java 7!但是,如果您切换到实际 Play 应用程序的目录并运行相同的命令...
$ sudo -E /usr/share/play/play
[info] Loading project definition from /var/playtest/project
[info] Set current project to playtest (in build file:/var/playtest/)
_ _
_ __ | | __ _ _ _| |
| '_ \| |/ _' | || |_|
| __/|_|\____|\__ (_)
|_| |__/
play! 2.1.1 (using Java 1.6.0_26 and Scala 2.10.0), http://www.playframework.org
> Type "help play" or "license" for more information.
现在play正在用java6启动。什么给出了,是开始更多的shell或其他东西而不是维护适当的JAVA_HOME?您将如何配置使用非默认 jdk 安装和 sudo for Play?
编辑:我在 /usr/share/play/play 脚本中添加了一个“echo $JAVA_HOME”,它在应用程序和非应用程序文件夹中都吐出了正确的 JDK 路径:“/usr/share/jdk7/bin/java” ,但是对于实际的 Play 项目,java6 仍然启动而不是 java7。
也许这是我应该开票的实际错误?Play 在执行开始时就知道正确的路径,但忘记了它并在某个时候开始使用默认值......