回答:
$ 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
(Mark Harrahのコメントをコピー)。
aboutコマンドは最近、sbtバージョンを含む最も関連性の高い情報を簡潔に出力しようとするために追加されました。
コマンド「sbt sbt-version」を実行すると、現在のディレクトリとバージョン番号が出力されます。
$ sbt sbt-version
[info] Set current project to spark (in build file:/home/morgan/code/spark/)
[info] 0.13.8
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プロジェクトで使用すると、タスク/設定が異なる出力を表示する場合があります。
sbt-version
、コマンドラインの1つの意味を上書きするsbt-extrasなどのカスタムsbtランチャーを使用している可能性があります。そうでなければ、sbt-version
コマンドラインとプロンプトの違いがわかりません。sbtVersion
どちらの場合も同じ設定にする必要があります。
sbt sbtVersion
プロジェクト外で実行すると、実行に9秒かかるのはなぜですか?awk、sed、minibloom、その他のコマンドラインツールと同様に、Python、node、rubyはすべて1秒もかかりません。gccは1秒かかります。これは非常に遅いです。しかし、9秒はチェリーを取ります。そのときsbtは何をしているのですか?
使用できます sbt about
例: C:\ Users \ smala> sbt about [情報]現在のプロジェクトをsmalaに設定します(ビルドファイル:/ C:/ Users / smala /内) [情報]これはsbt 0.13.6です [info]現在のプロジェクトは{file:/ C:/ Users / smala /} smala 0.1-SNAPSHOTです [info]現在のプロジェクトはScala 2.10.4に対してビルドされています [info]利用可能なプラグイン:sbt.plugins.IvyPlugin、sbt.plugins.JvmPlugin、sbt.plugins.CorePlugin、sbt.plugins.JUnitXmlReportPlugin [info] sbt、sbtプラグイン、ビルド定義はScala 2.10.4を使用しています
sbt consoleを実行し、次にsbtVersion
sbtバージョンをチェックするために入力し、そしてscalaVersion
scalaバージョンについては
行うと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
それらはすべて機能しますが、正しいものはsbt sbtVersion