2013-12-04 2 views
13

Как узнать, какая версия JDK SBT использует?Какая версия Java использует SBT?

У моего ноутбука установлены как JDK 1.6, так и JDK 1.7, поэтому мне просто интересно.

+1

Просто проверьте сценарий запуска SBT и какой java-home (и javaHome). –

ответ

6

Просто запустите SBT консоль, и вы получите что-то вроде этого:

Добро пожаловать в Scala версии 2.10.2 (Java HotSpot (TM) 64-разрядного сервера VM, Java 1.6.0_45). Введите выражения, чтобы они оценивались. Тип: помощь для получения дополнительной информации.

Что показывает вам используемую версию Java.

Приветствия

JC

+1

Это, похоже, больше не отображается для меня с sbt 0.13.7. Возможно, он был удален еще раньше, чем эта сборка. Комментарий ниже, используя eval, работает, хотя это должен быть принятый ответ. – myyk

+0

Согласовано. Я также хотел бы отметить, что, если люди не знают, какую версию JVM они работают в заданном контексте, то, вероятно, они не должны задавать такие вопросы. Возникает вопрос о том, какая версия Java SBT использует, а точнее, какую версию вы хотите использовать. Если это последний, то второй ответ ниже на самом деле более правильный. –

+0

Использование 'console' должно быть компилируемым проектом, и это может быть не так, поскольку используется неправильный jdk. – raisercostin

4

Это на самом деле легко.

Найдите командную строку SBT (cat `which sbt`) и посмотрите, какая Java это.

Например, моя команда SBT строка начинается с:

/usr/bin/java -Xmx512M 

И /usr/bin/java -version говорит версию Java, в моем случае это 1,7.

32

Вы можете использовать eval в SBT строке с соответствующими системными свойствами:

> eval System.getProperty("java.version") 
[info] ans: String = 1.7.0_45 
> eval System.getProperty("java.home") 
[info] ans: String = /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre 

(Другие ответы тоже хорошо, это просто еще один способ.)

1

sbt -v - еще один способ:

# sbt -v 
[process_args] java_version = '1.7.0_121' 
# Executing command line: 
java 
-Xms1024m 
-Xmx1024m 
-XX:ReservedCodeCacheSize=128m 
-XX:MaxPermSize=256m 
-jar 
/usr/share/sbt-launcher-packaging/bin/sbt-launch.jar 

[info] Loading project definition from /root/.sbt/0.13/staging/a6d8e5030b69785a9763/build/project 
[info] Set current project to xx (in build file:/build/) 
> 
+1

Ах .. где он хранится :) ??? sbt использует 1.7 java, я хочу переключить это чудо на использование 1.8 – Sergey

Смежные вопросы