Подтвердить что ты не робот

Несколько бок о бок версий с Homebrew?

Возможно ли установить несколько версий бок о бок с Homebrew?

Я нахожусь в ситуации, требующей sbt-0.7.x, sbt-0.10.x и sbt-0.11.0. В настоящий момент я установил как sbt-0.7.7, так и sbt-0.10.1 вручную, чтобы обойти проблему (с sbt-0.11.0, являющейся последним "sbt" из Homebrew).

4b9b3361

Ответ 1

Да. Когда вы устанавливаете новую версию пакета, она сохраняет старую. Символы в /usr/local/bin или где бы то ни было указывает на последнюю версию, но вы все равно можете вызывать двоичные файлы (или ссылку на библиотеки) в более старой версии.

brew list, чтобы узнать, что установлено. Вы можете посмотреть в каталогах пакетов, чтобы увидеть все версии; или вызовите brew list --versions, чтобы увидеть все пакеты и все версии.

Ответ 2

Чтобы легко переключаться между версиями формул, вы можете использовать:

brew switch <formula> <version>

Например:

brew switch gradle 3.2.1

Чтобы указать, какие версии, которые вы установили, попробуйте:

brew list --versions

или

brew list <formula> --versions

Если вы хотите избавиться от более старых версий, просто используйте:

brew cleanup

Ответ 3

Начиная с Homebrew 2.0.0, он автоматически удаляет старые пакеты при вызове brew upgrade. (https://brew.sh/2019/02/02/homebrew-2.0.0/). Чтобы отказаться от этого поведения, установите переменную среды: export HOMEBREW_NO_INSTALL_CLEANUP=1