Есть ли плагин sbt для получения зависимостей, как в Gemfile?
С помощью инструментов управления зависимостями, таких как rvm, dart's pub и т. Д., Вы можете указать зависимость без конкретной версии. Я получу последние версии каждой зависимости и создам базовый артефакт. Этот артефакт содержит каждую зависимость с их последней версией во время выполнения команды.
С помощью sbt я выполняю этот шаг вручную, просматривая репозиторий Maven. Это плагин sbt, который уже делает это?
Например, с пабом Дартс вы можете сделать это.
...
dependencies:
args: '>=0.10.0 < 0.11.0'
analyzer: '>=0.13.0 <0.14.0'
barback: '>=0.11.1 <0.14.0'
...
packages:
analyzer:
description: analyzer
source: hosted
version: "0.13.6"
args:
description: args
source: hosted
version: "0.10.0+2"
barback:
description: barback
source: hosted
version: "0.12.0"
...
2 ответа
Опираясь на ответ от @darko-cerdic
Вы можете указать latest
как номер ревизии. Например:
libraryDependencies += "org.apache.derby" % "derby" % "latest.release"
Для более подробной информации ознакомьтесь с документацией по плющу:
http://ant.apache.org/ivy/history/2.3.0/ivyfile/dependency.html
Если вы хотите, вы можете указать вручную dependencyOverrides
чтобы заставить конкретную версию библиотеки:
dependencyOverrides ++= Seq( "org.apache.derby" % "derby" % "1.0.0")
Обратите внимание, что в SBT 1.+ dependencyOverrides указывается как Seq, тогда как в предыдущих версиях он указывался как Set.
Используя плагин sbt-lock, вы можете заблокировать текущую версию для всех ваших зависимостей, чтобы ваша система CI могла использовать стабильный набор зависимостей. Он генерирует набор dependencyOverrides
на основе текущего набора разрешенных libraryDependencies
, Это дает вам поведение, похожее на Gemfile.lock.
Вы можете указать latest
как номер ревизии. Например:
libraryDependencies += "org.apache.derby" % "derby" % "latest.release"
Для более подробной информации ознакомьтесь с документацией по плющу:
http://ant.apache.org/ivy/history/2.3.0/ivyfile/dependency.html