このページでは、sbt のインタラクティブプロンプトまたはバッチモードで使用できるコマンドラインオプション、コマンド、およびタスクの比較的完全なリストを示します。基本的な概要については、入門ガイドの実行を参照してください。このページには、より詳細な情報が記載されています。
設定レベルのタスクは、設定に関連付けられたタスクです。たとえば、 `Compile/compile` と同等の `compile` は、メインソースコード ( `compile` 設定) をコンパイルします。 `Test/compile` は、テストソースコード ( `test` 設定) をコンパイルします。 `compile` 設定のほとんどのタスクには、 `Test/` 接頭辞を使用して実行できる `test` 設定で同等のタスクがあります。
`testQuick <テスト>*` 引数として指定されたテスト (または引数が指定されていない場合はすべてのテスト) を実行します。
`eval <Scala 式>` 指定された Scala 式を評価し、結果と推論された型を返します。これは、システムプロパティの設定、電卓、プロセスのフォークなどに使用できます。たとえば
> eval System.setProperty("demo", "true")
> eval 1+1
> eval "ls -l" !
reload [plugins|return]
引数が指定されていない場合、ビルドをリロードし、必要に応じてビルドまたはプラグイン定義を再コンパイルします。 reload plugins は、現在のプロジェクトをビルド定義プロジェクト(project/
内)に変更します。これは、ビルド定義を直接操作する場合に便利です。たとえば、ビルド定義プロジェクトで clean を実行すると、スナップショットが更新され、ビルド定義が再コンパイルされます。 reload return は、メインプロジェクトに戻ります。set <設定式>
指定された設定定義を評価して適用します。設定は、sbt が再起動されるか、ビルドがリロードされるか、設定が別の set コマンドで上書きされるか、session コマンドで削除されるまで適用されます。詳細は、.sbt ビルド定義と設定の検査を参照してください。session <コマンド>
set
コマンドで定義されたセッション設定を管理します。プロンプトで構成された設定を永続化できます。詳細は、設定の検査を参照してください。inspect <設定キー>
値、説明、定義スコープ、依存関係、委任チェーン、関連設定など、設定に関する情報を表示します。詳細は、設定の検査を参照してください。OSシェルから sbt
ランナーを起動する際に、さまざまなシステムプロパティまたはJVMの追加オプションを指定して、その動作に影響を与えることができます。
sbt
の起動時に JAVA_OPTS
または SBT_OPTS
環境変数が定義されている場合、それらの内容は sbt を実行する JVM にコマンドライン引数として渡されます。
現在のディレクトリに .jvmopts
という名前のファイルが存在する場合、その内容は sbt の起動時に JAVA_OPTS
に追加されます。同様に、.sbtopts
または /etc/sbt/sbtopts
が存在する場合、それらの内容は SBT_OPTS
に追加されます。 JAVA_OPTS
のデフォルト値は -Dfile.encoding=UTF8
です。
JVM システムプロパティとコマンドラインオプションを sbt
引数として直接指定することもできます。 -Dkey=val
引数はそのまま JVM に渡され、-J-Xfoo
は -Xfoo
として渡されます。
詳細は、sbt --help
を参照してください。
パーマネント領域の容量が不足している場合、またはワークステーションのメモリが少ない場合は、他の Java アプリケーションと同様に JVM 構成を調整します。
たとえば、メモリ関連の一般的なオプションセットは次のとおりです。
export SBT_OPTS="-Xmx2048M -Xss2M"
sbt
または、このセッションのみに指定する場合は、次のようになります。
sbt -J-Xmx2048M -J-Xss2M
sbt
は単なるブートストラップであり、sbt の実際の中身、Scala コンパイラと標準ライブラリは、デフォルトでは共有ディレクトリ $HOME/.sbt/boot/
にダウンロードされます。
このディレクトリの場所を変更するには、sbt.boot.directory
システムプロパティを設定します。相対パスは現在の作業ディレクトリに対して解決されます。これは、プロジェクト間でブートディレクトリを共有したくない場合に便利です。たとえば、次の例では、0.11 より前のスタイルを使用して、ブートディレクトリを project/boot/
に配置しています。
sbt -Dsbt.boot.directory=project/boot/
ターミナルで使用される文字エンコーディングは、プラットフォームの Java のデフォルトエンコーディングと異なる場合があります。この場合、file.encoding=<encoding>
システムプロパティを指定する必要があります。これは次のようになります。
export JAVA_OPTS="-Dfile.encoding=Cp1252"
sbt
Unix では、sbt は標準の http_proxy
、https_proxy
、および ftp_proxy
環境変数から HTTP、HTTPS、または FTP プロキシ設定を取得します。認証が必要なプロキシの背後にある場合は、sbt の起動時にいくつかの補足フラグを渡す必要があります。詳細は、JVM ネットワークシステムプロパティを参照してください。
例えば
sbt -Dhttp.proxyUser=username -Dhttp.proxyPassword=mypassword
Windows では、スクリプトでプロキシホスト、ポート、および該当する場合はユーザー名とパスワードのプロパティを設定する必要があります。たとえば、HTTP の場合は次のようになります。
sbt -Dhttp.proxyHost=myproxy -Dhttp.proxyPort=8080 -Dhttp.proxyUser=username -Dhttp.proxyPassword=mypassword
上記のコマンドラインで http
を https
または ftp
に置き換えて、HTTPS または FTP を構成します。
以下のシステムプロパティも sbt
に渡すことができます。
プロパティ | 値 | デフォルト | 意味 |
---|---|---|---|
sbt.banner | ブール値 | true(1.3以降) | 新機能を宣伝するウェルカムバナーを表示します。 |
sbt.boot.directory | ディレクトリ | ~/.sbt/boot | 共有ブートディレクトリへのパス。CI環境でsbtを使用し、実行間でsbtブートクラスをキャッシュする場合に明示的に定義する必要があります。sbt.boot.directory明示的に定義する必要があります。 CI 環境で sbt を使用していて、実行間で sbt ブートクラスをキャッシュしたい場合。 |
sbt.boot.properties | ファイル | 概ねsbt.boot.propertiessbt ランチャー内部で、sbt のバージョンに固有です。 | sbt ブートプロパティ ファイルを見つけるためのパス。これは、sbt ベースディレクトリ、ユーザーのホームディレクトリ、または sbt jar ファイルの場所に対する相対パス、または絶対パスまたは絶対ファイル URI にすることができます。 |
sbt.ci | ブール値 | false(環境変数BUILD_NUMBERが設定されていない限り) | 継続的インテグレーション環境向け。スーパーシェルと色を抑制します。 |
sbt.client | ブール値 | false | |
sbt.color | 文字列 | auto | 置き換えsbt.log.format。色を有効にするには、alwaysまたはtrueを使用します。色を無効にするには、neverまたはfalse> を使用します。出力が色をサポートする端末(パイプではない)の場合に色を使用するには、auto. |
sbt.coursier | ブール値 | true(1.3以降) | パッケージの取得に coursier を使用します。(も参照してくださいsbt.ivy.) |
sbt.coursier.home | ディレクトリ | CoursierDependencyResolution.defaultCacheLocation(1.3以降) | coursier アーティファクトキャッシュの場所。デフォルトは Coursier キャッシュ解決ロジック で定義されています。値は `csrCacheDirectory` コマンドで確認できます。CI 環境で coursier を使用していて、実行間でアーティファクトをキャッシュしたい場合に明示的に定義する必要があります。sbt.coursier.home明示的に定義する必要があります。 coursier を CI 環境で使用していて、実行間で成果物をキャッシュしたい場合。 |
sbt.extraClasspath | クラスパスのエントリ | sbt のクラスパスに追加される (jar ファイルまたはディレクトリ)。エントリはコンマで区切られていることに注意してください。例:entry1, entry2,..。も参照してくださいresourcesbt ランチャー のドキュメントにあります。 | |
sbt.genbuildprops | ブール値 | true | 生成build.propertiesが見つからない場合。設定されていない場合、これはsbt.skip.version.write. |
sbt.global.base | ディレクトリ | $HOME/.sbt/1.0 | グローバル設定とプラグインを含むディレクトリ。 |
xsbt.inc.debug | ブール値 | false | 増分デバッガーの追加デバッグ。 |
sbt.ivy | ブール値 | true(<1.3) | パッケージの取得に Ivy を使用します。 |
sbt.ivy.home | ディレクトリ | ~/.ivy2 | ローカル Ivy リポジトリとアーティファクトキャッシュを含むディレクトリ。CI環境でsbtを使用し、実行間でivyアーティファクトをキャッシュする場合に明示的に定義する必要があります。sbt.ivy.home明示的に定義する必要があります。 CI 環境で sbt を使用していて、実行間で Ivy 成果物をキャッシュしたい場合。 |
sbt.log.noformat | ブール値 | false | true の場合、ANSI カラーコードを無効にします。ビルドサーバーまたは色をサポートしていない端末で役立ちます。 |
sbt.main.class | 文字列 | sbt.xMain | 使用する sbt クラス (代替手段 にはsbt.ConsoleMainとsbt.ScriptMain). |
sbt.offline | ブール値 | false | リポジトリからのクラスの取得を回避します。 |
sbt.override.build.repos | ブール値 | false | true の場合、ビルド定義で構成されたリポジトリは無視され、ランチャー用に構成されたリポジトリが代わりに使用されます。を参照してください。sbt.repository.configと sbt ランチャー のドキュメント。 |
sbt.progress | 文字列 | ? | 使用alwaysを使用して進行状況を表示します(「スーパーシェル」)。 |
sbt.repository.config | ファイル | ~/.sbt/repositories | ランチャーに使用するリポジトリを含むファイル。形式は[repositories]セクションと同じです sbt ランチャー 構成ファイル。この設定は通常、設定と組み合わせて使用されますsbt.override.build.reposにtrue(参照sbt.override.build.reposと sbt ランチャー のドキュメント)。 |
sbt.resident.limit | 数 | 0 | 保持する scala コンパイラの数。この実験的な機能は、コンパイル時間を改善することを目的としていました。成功したようには見えず、このフラグはおそらく削除されます。 |
sbt.skip.version.write | ブール値 | false | 生成build.propertiesが見つからない場合。を参照してください。sbt.genbuildprops. |
sbt.supershell | ブール値 | true色が有効になっている場合 | スーパーシェルを使用します(シェルの下部に進行状況を表示します)。 |
sbt.supershell.sleep | 数 | 100 | スーパーシェルの進行状況領域の更新間隔を待機する時間。 |
sbt.task.timings | ブール値 | false | タスクの実行に elapsedれた時間を測定します。 |
sbt.task.timings.omit.paths | ブール値 | false | タイミングを報告するときにパスを省略します。 |
sbt.task.timings.on.shutdown | ブール値 | false | JVM シャットダウン時にタイミングを報告します(タスク完了時ではなく)。 |
sbt.task.timings.threshold | 文字列 | 0 | アイテムがこのしきい値を下回る場合、タイミングレポートから省略します。 |
sbt.traces | ブール値 | false | タスクの Chrome トレースイベント形式ログを生成します。 |
sbt.turbo | ブール値 | false | 追加のレイヤードクラスローダーを使用します。 |
sbt.version | バージョン | 1.9.8 | 使用する sbt のバージョン。通常はproject/build.properties. |
sbt.watch.mode | 文字列 | auto | もしポーリングの場合、更新のためにファイルシステムを定期的にチェックします。 |