8

在我的 Windows 7(64 位)环境中,我有很多可用的 JVM:

C:\Program Files (x86)\Java\j2re1.4.2_12\bin\client\jvm.dll
C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
D:\programs\Java\jdk1.7.0_45\jre\bin\server\jvm.dll
D:\programs\Java\jre7\bin\server\jvm.dll

目前,使用 Lighttable/Leiningen(我不知道哪个做出选择,以及如何选择),它使用

C:\Program Files (x86)\Java\j2re1.4.2_12\bin\client\jvm.dll

但我真的很想试试

D:\programs\Java\jdk1.7.0_45\jre\bin\server\jvm.dll

更令人费解的是,当我打字时

java版本

我得到以下信息:

D:\yushen>java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

看来这就是我想在 Lighttable/Leinengen 中拥有的东西。

你能告诉我如何做出明确的选择/配置吗?

我尝试了谷歌,但找不到一些线索。

非常感谢!

4

4 回答 4

10

我找到了 Leiningen 的个人资料

$HOME/.lein/profiles.clj

对我来说,在 Windows 上$HOMED:\Users\carl. 更一般地说,如果您使用CMD. 这包含:

{:user
  {
  :java-cmd "F:\\JDK8\\bin\\java.exe"
  :plugins [

    ]
   }
}

...我能够将其更改为良好的效果。

于 2015-07-25T09:25:34.810 回答
6

首先将 JDK 的 bin 目录放在您的路径中。这是最稳妥的办法。

更多详情。Windows,可以使用该where命令查看可执行文件的版本。它是where javawhere java.exe您也可以通过键入从命令提示符查看您的路径path。如果您从命令行启动某些东西,并且它没有采取奇怪的措施来查找 JVM,那么它应该会在您的路径中找到第一个,它应该与运行 where 命令的结果一致。

如果 where 命令出现了您不希望出现的内容,请在出现的条目之前将正确的目录添加到路径中,或者重新排列路径以使其首先出现。

要在 leiningen 中进行测试,请启动一个 repl 并评估它。

(println (System/getProperty "java.version"))

例如

Yoyo-2:Desktop bill$ lein repl
(System/getPnREPL server started on port 61475 on host 127.0.0.1 - nrepl://127.0.0.1:61475
REPL-y 0.3.5, nREPL 0.2.6
Clojure 1.6.0
Java HotSpot(TM) 64-Bit Server VM 1.8.0_20-b26
    Docs: (doc function-name-here)
          (find-doc "part-of-name-here")
  Source: (source function-name-here)
 Javadoc: (javadoc java-object-or-class-here)
    Exit: Control+D or (exit) or (quit)
 Results: Stored in vars *1, *2, *3, an exception in *e

ruser=> (System/getProperty "java.version")
"1.8.0_20"

根据我的经验,Leiningen 一直使用它在路径中找到的 java 版本。虽然没有使用灯桌的经验。

于 2014-10-20T15:03:39.187 回答
3

对于 Leiningen,您可以进行编辑lein.bat以准确指向所需的 Java SDK 版本。我不知道这是否同样适用于 LightTable。

或者您可以设置一个全局JAVA_HOME. 这真的是 Googleable(或 DuckDuckGo-able)。

于 2014-10-20T15:01:02.673 回答
2

最后,我找到了这个链接: http: //leiningen-win-installer.djpowell.net/

运行安装程序后,它具有重新配置leiningen的功能,使用它,我能够将我的旧leiningen配置为使用我想要的JDK:D:\programs\Java\jdk1.7.0_45\bin\java.exe,那么 leiningen/lighttable 中的 JVM 实例现在是所需的实例。

故事的寓意:leiningen 需要使用新安装的 JDK 重新配置,并具有 leiningen-win-installer 的配置功能。

可能可以手动配置 leiningen,但我还没有找到方法。我尝试使用 java-command 选项通过我的 project.clj 手动配置,但没有成功。

于 2014-10-21T01:33:30.443 回答