Как проверить версию sbt?
Как проверить, какая версия sbt я запускаю?
У меня есть файл bash, который использует sbt-launch.jar
, и он работает, но
$ sbt version
показывает только "версию проекта" (0.1) и
$ sbt --version
ничего не делает.
Ответы
Ответ 1
$ sbt sbtVersion
Это печатает версию sbt, используемую в вашем текущем проекте, или если это мультимодульный проект для каждого модуля.
$ sbt 'inspect sbtVersion'
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.13.1
[info] Description:
[info] Provides the version of sbt. This setting should be not be modified.
[info] Provided by:
[info] */*:sbtVersion
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:68
[info] Delegates:
[info] *:sbtVersion
[info] {.}/*:sbtVersion
[info] */*:sbtVersion
[info] Related:
[info] */*:sbtVersion
Вы также можете использовать sbt about
, который (копирование Отметьте комментарий Harrah):
Недавно была добавлена команда about, чтобы попытаться наиболее релевантную информацию, включая версию sbt.
Ответ 2
Запустив команду, "sbt sbt-version" просто выведет ваш текущий каталог и номер версии.
$ sbt sbt-version
[info] Set current project to spark (in build file:/home/morgan/code/spark/)
[info] 0.13.8
Ответ 3
sbt about
затем введите, чтобы получить версию SBT
Ответ 4
В SBT 0.13 и выше вы можете использовать задачу sbtVersion
(как указано командой @steffen) или about
(как указано @mark-harrah)
Разница в том, как задача sbtVersion
работает и вне проекта SBT. Когда в проекте SBT sbtVersion
отображает версию SBT, используемую проектом и его подпроектами.
$ sbt sbtVersion
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Updating {file:/Users/jacek/.sbt/0.13/plugins/}global-plugins...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Loading project definition from /Users/jacek/oss/scalania/project
[info] Set current project to scalania (in build file:/Users/jacek/oss/scalania/)
[info] exercises/*:sbtVersion
[info] 0.13.1-RC5
[info] scalania/*:sbtVersion
[info] 0.13.1-RC5
Он установлен в project/build.properties
:
jacek:~/oss/scalania
$ cat project/build.properties
sbt.version=0.13.1-RC5
Та же самая задача, выполняемая вне проекта SBT, показывает текущую версию самого исполняемого файла.
jacek:~
$ sbt sbtVersion
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Updating {file:/Users/jacek/.sbt/0.13/plugins/}global-plugins...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] 0.13.0
Когда вы находитесь снаружи, команда about
кажется более подходящей, так как она показывает версию sbt, а также Scala и доступные плагины.
jacek:~
$ sbt about
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] This is sbt 0.13.0
[info] The current project is {file:/Users/jacek/}jacek 0.1-SNAPSHOT
[info] The current project is built against Scala 2.10.2
[info] Available Plugins: com.typesafe.sbt.SbtGit, com.typesafe.sbt.SbtProguard, growl.GrowlingTests, org.sbtidea.SbtIdeaPlugin, com.timushev.sbt.updates.UpdatesPlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.10.2
Вы можете запустить "help about", чтобы прочитать его документацию:
jacek:~
$ sbt 'help about'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
Displays basic information about sbt and the build.
Для параметра sbtVersion
может помочь команда inspect
.
$ sbt 'inspect sbtVersion'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.13.0
[info] Description:
[info] Provides the version of sbt. This setting should be not be modified.
[info] Provided by:
[info] */*:sbtVersion
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:67
[info] Delegates:
[info] *:sbtVersion
[info] {.}/*:sbtVersion
[info] */*:sbtVersion
[info] Related:
[info] */*:sbtVersion
Параметр version
, который люди, похоже, ожидает проверить, чтобы узнать версию SBT, - установить версию/версию текущего модуля.
$ sbt 'inspect version'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.1-SNAPSHOT
[info] Description:
[info] The version/revision of the current module.
[info] Provided by:
[info] */*:version
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:102
[info] Reverse dependencies:
[info] *:projectId
[info] *:isSnapshot
[info] Delegates:
[info] *:version
[info] {.}/*:version
[info] */*:version
[info] Related:
[info] */*:version
При использовании в проекте SBT задачи/настройки могут отображать разные выходы.
Ответ 5
Вы можете использовать sbt about
Example:
C:\Users\smala>sbt about
[info] Set current project to smala (in build file:/C:/Users/smala/)
[info] This is sbt 0.13.6
[info] The current project is {file:/C:/Users/smala/}smala 0.1-SNAPSHOT
[info] The current project is built against Scala 2.10.4
[info] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.10.4"
Ответ 6
запустите консоль sbt, затем введите sbtVersion
, чтобы проверить версию sbt, и scalaVersion
для scala version
Ответ 7
Выполнение sbt sbt-version
привело к некоторой ошибке, так как
[error] Not a valid command: sbt-version (similar: writeSbtVersion, session)
[error] Not a valid project ID: sbt-version
[error] Expected ':'
[error] Not a valid key: sbt-version (similar: sbtVersion, version, sbtBinaryVersion)
[error] sbt-version
[error] ^
Как вы можете увидеть similar: sbtVersion, version, sbtBinaryVersion
подсказку similar: sbtVersion, version, sbtBinaryVersion
, все они работают, но правильный генерируется sbt sbtVersion
Ответ 8
Вы можете использовать команду ниже, чтобы проверить версию SBT
sbt sbtVersion
sbt about
sbt 'inspect version'
sbt version