Где находится папка sbt 1.4?

#eclipse #scala #eclipse-plugin #sbt

#eclipse #scala #eclipse-плагин #sbt

Вопрос:

Я следую руководству по установке плагина sbt eclipse здесь. Он говорит мне создать:

 the global file (for version 0.13 and up) at ~/.sbt/SBT_VERSION/plugins/plugins.sbt
  

Я захожу ~/.sbt/ и вижу там только 1.0 папки и boot папки. 1.4 нигде не видно. Я что-то упустил? 1.4 — это довольно много версий от 1.0, и я не могу придумать причину, по которой папка отсутствует.

Комментарии:

1. 1.0 работает для любой 1.x.y версии sbt.

2. Eclipse Scala IDE в значительной степени мертва. Я бы рекомендовал вместо этого попробовать IntelliJ IDEA или Visual Studio Code.

3. Я использую Eclipse, потому что некоторые учебные пособия используют его. В любом случае, все стало сложнее, и мне пришлось перейти к sbt тому, что никогда не предназначалось.

Ответ №1:

Как упоминалось в комментарии, 1.0 работает для любой 1.x версии. Если вы проверите документацию sbt для глобальных настроек, вы увидите, что она неоднозначно ссылается на это местоположение:

Настройки, которые должны применяться ко всем проектам, могут входить $HOME/.sbt/1.0/global.sbt (или любой файл $HOME/.sbt/1.0 с .sbt расширением). Плагины, которые определены глобально в $HOME/.sbt/1.0/plugins/ , доступны для этих настроек.

Да, это может сбить с толку, но причина в том, что все 1.x версии совместимы с двоичными файлами, поэтому не было причин создавать новые каталоги для каждой младшей версии sbt, и она осталась 1.0 . Вы можете найти более подробную информацию об этом в этом выпуске: sbt / sbt #3858

@eed3si9n:

Это сделано намеренно. sbt 1.x использует семантическое управление версиями. […] Из-за семантического управления версиями bin compat теперь обозначается только первым сегментом. Мы должны были понять это раньше и использовать 1 или что-то в этом роде, но ожидался некоторый код (Int, Int), поэтому мы выбрали 1.0.

@dwijnand:

Как сказал Евгений, 1.0 — это двоичный API для всей серии 1.x. Оглядываясь назад, я должен был сделать это «1.x» (и правильно обработать существующую подпись типа (Int, Int)) вместо «1.0».

Комментарии:

1. Спасибо! Это свело меня с ума.