Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检查sbt版本?_Sbt - Fatal编程技术网

如何检查sbt版本?

如何检查sbt版本?,sbt,Sbt,如何检查正在运行的sbt版本 我使用sbt launch.jar设置了bash文件,它可以工作,但是 $ sbt version 仅显示“项目版本”(0.1)和 什么也不做 $ sbt sbtVersion 这将打印当前项目中使用的sbt版本,或者如果每个模块都是多模块项目,则打印该版本 $ sbt 'inspect sbtVersion' [info] Set current project to jacek (in build file:/Users/jacek/) [info] Set

如何检查正在运行的sbt版本

我使用
sbt launch.jar
设置了bash文件,它可以工作,但是

$ sbt version
仅显示“项目版本”(0.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
进行(复制):

最近添加了about命令,以尝试简洁地打印 最相关的信息,包括sbt版本


在SBT 0.13及更高版本中,您可以使用
sbtVersion
任务(由@steffen指出)或
about
命令(由@mark harrah指出)

SBT项目内外的
sbtVersion
任务的工作方式是不同的。在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
它在
项目/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
人们似乎希望通过检查了解SBT版本的
version
设置是设置当前模块的版本/修订版


在SBT项目中使用时,任务/设置可能会显示不同的输出。

您可以使用
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" 例子: C:\Users\smala>sbt关于 [信息]将当前项目设置为smala(在生成文件中:/C:/Users/smala/) [信息]这里是sbt 0.13.6 [信息]当前项目是{file:/C:/Users/smala/}smala 0.1-SNAPSHOT [信息]当前项目是根据Scala 2.10.4构建的 [信息]可用插件:sbt.Plugins.IvyPlugin、sbt.Plugins.JvmPlugin、sbt.Plugins.CorePlugin、sbt.Plugins.JUnitXmlReportPlugin [信息]sbt、sbt插件和构建定义使用Scala 2.10.4“运行命令,“sbt sbt version”将只输出当前目录和版本号

$ sbt sbt-version
[info] Set current project to spark (in build file:/home/morgan/code/spark/)
[info] 0.13.8

sbt about
然后输入以获取sbt版本


运行sbt控制台,然后键入
sbt版本
检查sbt版本,对于scala版本

执行
sbt sbt版本
会导致以下错误:

[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 shell中的sbt sbtVersion生成的

sbt:venkat> about
[info] This is sbt 1.3.3
...

可以考虑使用--version命令行标志吗?这是人们首先要尝试的。问题是“如何检查正在运行的sbt的哪个版本?”?答案是关于当前项目的普林廷版本。为什么答案是A?请相信SBT总是选择最非标准的做事方式:)全世界都使用“--version”,SBT使用“sbtVersion”。当我需要它时,我每次都必须检查它(不是经常检查)。遵循良好的旧sbt传统,在文档中隐藏得很钝。也许您正在使用自定义sbt启动器,例如sbt extras,它覆盖了命令行中
sbt版本的含义。否则,我不知道命令行和提示符下的
sbt version
之间有什么区别。在这两种情况下都应该是相同的
sbtVersion
设置。有没有办法为不同的子项目设置不同的sbt版本?为什么
sbt sbtVersion
在项目外部运行需要9秒时间?Python、node和ruby,以及awk、sed、minibloom和其他一些命令行工具,都在一秒钟之内完成。gcc需要整整一秒钟,速度非常慢。但是9秒就要结束了。当时sbt在做什么?@MaxMurphy JVM初始化是我认为最慢的事情之一。从sbt 1.0开始,你甚至必须使用
sbt sbtVersion
(camelCase)作为支持。对于其他寻求这个问题答案的人来说,这就是答案。无法理解为什么上面的错误答案被接受。。。通过深入讨论,我们可以找到这个答案。。。但是…以下的新版本有效,sbt about或sbt sbtVersion已经有其他答案了,我只是想包括新的信息,而不是重复其他答案@viru
[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]            ^
sbt:venkat> about
[info] This is sbt 1.3.3
...