我如何检查哪个版本的SBT我正在运行?
我已经设置了Bash文件,使用sbt-launch.jar,它可以工作,但是
sbt version
只显示“项目版本”(0.1)和
sbt --version
什么也不做。
我如何检查哪个版本的SBT我正在运行?
我已经设置了Bash文件,使用sbt-launch.jar,它可以工作,但是
sbt version
只显示“项目版本”(0.1)和
sbt --version
什么也不做。
当前回答
最新版本的SBT终于支持标准版本标志!
$ sbt --version
sbt version in this project: 1.6.2
sbt script version: 1.6.2
(用1.6+测试,但似乎至少从1.3.3开始就存在了)
其他回答
sbt --version
它现在的版本为1.3.3+(归功于@ElectronWill)。
你可能还想使用sbt(复制Mark Harrah的评论):
最近添加了about命令,以尝试简洁地打印 最相关的信息,包括SBT版本。
从最初发布问题以来,从命令行运行sbt时发生的情况在9年里可能发生了一些变化。
今天,你至少会和两个“版本”打交道:
启动器脚本(例如/usr/local/bin/sbt)版本用sbt——script-version检查。 默认的SBT版本(= SBT -launcher JAR version),主要由项目SBT版本决定(在project/build.properties中),其次由启动程序脚本本身决定。使用sbt——script-version(或sbt shell中的sbtVersion)检查
幸运的是,在大多数日常场景中,项目SBT版本是您需要注意的唯一版本。
1 它曾经只是java -jar sbt-launcher.jar,然后有/是sbt-extras/sbt(又名“叛军削减”),然后有“官方”sbt脚本,但在一个单独的github项目称为sbt-launcher-packaging(现在存档)。目前,默认脚本位于sbt/sbt GH项目的根文件夹中,通常是您需要担心的唯一版本。
最新版本的SBT终于支持标准版本标志!
$ sbt --version
sbt version in this project: 1.6.2
sbt script version: 1.6.2
(用1.6+测试,但似乎至少从1.3.3开始就存在了)
执行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] ^
正如您可以看到的提示类似:sbtVersion, version, sbtBinaryVersion,它们都可以工作,但正确的是由sbt sbtVersion生成的
从sbt外壳内部
sbt:venkat> about
[info] This is sbt 1.3.3
...