Альтернативы

Открыл для себя древнюю, но крайне полезную утилитку update-alternatives. Эта утилитка просто незаменима если приходится работать c кривыми не совсем удачными сборочными файлами.
Небольшой пример. У нас есть куча проектов, которые необходимо собирать разными JDK. Что-то собирается при помощи 1.5, что-то 1.6 и вообще ничего нельзя собрать OpenJDK. При переключении с проекта на проект надо либо каждый раз пересоздавать линки на нужный компилятор, либо можно воспользоваться update-alternatives.
При использовании update-alternatives, вначале, нужно сконфигурировать все используемые компиляторы:

sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jdk1.6.0_27/bin/java 1

После чего можно довольно просто переключаться между версиями:

a-stavonin:/mnt/../build: sudo update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                      Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      auto mode
  1            /usr/lib/java/jdk1.5.0_22/bin/java         1         manual mode
* 2            /usr/lib/java/jdk1.6.0_27/bin/java         1         manual mode
  3            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      manual mode

Press enter to keep the current choice[*], or type selection number:

Leave a Reply