Najbardziej niezawodny (być może jedyny) sposób, aby to zrobić w momencie uruchomienia SBT z java
w folderze JDK7.
Zmodyfikuj swój skrypt wyrzutni sbt
; lub użyj this one, która pozwala określić Java Home (i wiele więcej!) jako opcje wiersza poleceń.
~/code/scratch/20111009 sbt -java-home /Library/Java/JavaVirtualMachines/openjdk-1.7-x86_64/Contents/Home
Starting sbt: invoke with -help for other options
[info] Loading global plugins from /Users/jason/.sbt/plugins
[info] Set current project to default-3e990a (in build file:/Users/jason/code/scratch/20111009/)
> console
[info] Compiling 1 Scala source to /Users/jason/code/scratch/20111009/target/scala-2.9.1/classes...
[info] Starting scala interpreter...
[info]
Welcome to Scala version 2.9.1.final (OpenJDK 64-Bit Server VM, Java 1.7.0-internal).
Type in expressions to have them evaluated.
Type :help for more information.
scala> java.util.Objects.equals(null, null)
res0: Boolean = true
Wystarczy ustawienie javaHome := Some(file("/Library/Java/JavaVirtualMachines/openjdk-1.7-x86_64/Contents/Home"))
zmienia wersję Java używaną do kompilowania i procesy widelec, ale nie zmienia wersji standardowej biblioteki Java na ścieżce klasy, ani wersja służy do uruchamiania testów, które są zawsze uruchamiane The ta sama JVM co SBT.
Na 'windows10' i' sbt-0.13' zrobiłem to z zestawem 'cmd/C 'JAVA_HOME = c: \ apps \ jdk1.7.0_80 && sbt" '. Nie dodawaj spacji przed &&, ponieważ będą one wpływać na zmienną JAVA_HOME. – raisercostin