Вопрос
Здесь Рубиновый менеджер эквивалент мира Java?
Я ищу инструмент, который позволяет мне легко загрузить и установить новые JVM и переключаться между ними. Например:
jvm install <version>
jvm list //will list installed JVMs on my system
jvm use jdk1.6 //will switch my env to jdk 1.6 version, etc.
Решение
Если вы используете Ubuntu, вы можете указать, какой JVM вы хотите использовать с помощью команды (работает только для JVM, установленной из APT-Get или Aptitude)
sudo update-alternatives --config java
Или установив java_home. Вот хороший учебник:
Другие советы
http://www.jenv.be/ позволит этот тип управления.
С помощью JVM, если вам нужно переключиться между ними, вам просто нужно использовать пакетный файл (или скрипт PowerShell) для управления путем и JVM ClassPath и JVM. Вам не нужно полагаться на систему по умолчанию JVM -пути и вместо этого просто позволять вашему приложению указывать на то, что вам нравится JVM, изменяя среду ClassPath и JVM Path в оболочке, которая запускает JVM.
Для программ, которые получают местоположение Java из реестра, теоретически вы можете использовать пакетный скрипт для обновления.
В этом отношении Java намного проще, чем «Рубиновый менеджер».
Сдкман! является аналогичным инструментом для экосистемы Java. Поддерживает различные версии Java, Scala, Clojure, Kotlin, Groovy и таких инструментов, как Maven и Gradle.
Работает на Mac и Linux, с некоторыми упоминаниями о поддержке Windows в зависимости от того, насколько сильно вы готовы попробовать :)
Хитрость состоит в том, чтобы использовать обновление-альтернативы Java (из пакета Java-Common). Команда-альтернативы обновлений не обновляет каждую из символических ссылок для различных исполнителей Java /Bin, поэтому обновление-альтермативы Java лучше.
Итак, чтобы пойти на OpenJDK с 6 до 7, используйте update-java-alternatives -l
Чтобы получить список альтернатив Java, а затем использовал sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
Чтобы переключить JDK.
Предостережение: команда выше может доставить следующие ошибки,
update-alternatives: error: no alternatives for mozilla-javaplugin.so.
update-java-alternatives: plugin alternative does not exist:
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so
Это потому, что плагин OpenJDK не установлен по умолчанию. Чтобы исправить запуск sudo apt-get install icedtea-7-plugin
и повторное обновление-альтерматы-джава.