Есть ли способ заставить CIDER использовать определенную версию JVM?
Я обновлял ряд проектов для использования недавно выпущенной Java 8, включая некоторые проекты Clojure, которые зависят от взаимодействия с Java. Однако во время разработки я столкнулся с некоторыми проблемами с некоторыми инструментами. Одним из них является использование CIDER из Emacs. Кажется, я не могу заставить его использовать Java 8 JVM.
В моей системе установлены версии JDK 1.7.0_17, _21, _25, _40, _45, _51 и 1.8.0 для тестирования совместимости.
Когда я запускаю CIDER REPL и проверяю версию Java, я вижу это:
; CIDER 0.6.0alpha (package: 20140322.332) (Clojure 1.6.0, nREPL 0.2.3)
eight-queens.core> (System/getProperty "java.version")
"1.7.0_25"
Я видел аналогичные результаты при использовании nREPL до обновления до CIDER. Я вижу аналогичные результаты при использовании REPL в Light Table. Все работает, как и ожидалось, с помощью Clojure REPL, запущенного из командной строки.
Мои переменные среды, связанные с Java, включают:
ПУТЬ содержит: C:\Program Files\Java\jdk1.8.0\bin\
JAVA_HOME: C:\Program Files\Java\jdk1.8.0
LEIN_JAVA_CMD: C:\Program Files\Java\jdk1.8.0\bin\java
(Leiningen, запущенный из командной оболочки в Emacs, вызвал аналогичную проблему до добавления переменной среды LEIN_JAVA_CMD. Как ни странно, добавление переменной среды изменило версию JVM, используемую CIDER. До добавления переменной среды сообщалось об использовании версии 1.7.0_40. )
Я не нашел ничего подходящего в реестре Windows.
Есть ли способ заставить CIDER работать с конкретной JVM, не удаляя все остальное?