コマンドラインからテストせずにsbtアセンブリコマンドを実行するにはどうすればよいですか?


89

私は質問を読みました:これあれ。彼らはsbtファイルを変更することを提案しています。しかし、私はsbt clean assemblyテストなしで実行したいので、sbtビルドファイルを変更しません。sbtで可能ですか?Mavenには-DskipTest=trueパラメーターがありますが、sbtのアナログはありますか?


これとあれ、そして公式文書に基づいて、私はノーと言います。ビルドファイルを変更packageするか、テストを実行しないため実行する必要があります。
DB5 2014年

回答:


150

コマンドラインで変更する必要のあるプロパティについては、「set」を前に付け、引用符で囲みます。

Windowsの例:

sbt "set test in assembly := {}" clean assembly

Macの例:

sbt 'set test in assembly := {}' clean assembly

編集。Windowsでは引用符がまったく異なるため、この特定の回答に二重引用符を使用するだけで、この回答を一般的なものにして、人々が始められるようにしました。一般に、原則は、sbt「セット…」全体で、多くの場合エスケープされていない単一の引数を渡したいということです。また、複数の「set」ステートメントを個別のコマンドライン引数として渡すことも、1つの引用符で囲まれた引数内でステートメントをセミコロンで区切ることもできます。
kshakir 2015

1
Macの場合、sbt 0.13.7 <set>:1:エラー:見つかりません:値アセンブリ[エラー]式のタイプエラー "これは本当に13.7対13.8の問題ですか?
メトロポリス

12
これはsbtバージョンの問題ではないかもしれませんが、古いためsbt-assemblyです。より普遍的なを試してください"set test in Test := {}"sbt-assemblyあなたのpluginsディレクトリにはどのバージョンがリストされていますか?0.11.20.13.0の両方のドキュメントは、build.sbt内で上記と同じ構文を使用すると述べています。しかし、おそらく古いプラグインを使用している場合、設定はsbtコンソールを介して利用できない可能性があり、したがってコマンドラインでは利用できない可能性があると推測しています。
kshakir 2015

5
sbt 'set test in assembly := {}' clean assemblyまだmacosでscalatestスペックを実行しています/sbt 1.0
prayagupd 2018

2
あなたが内部でこれをやっている場合はsbt、プロンプト、引用符なしで、3つの個別のタスクとしてそれらを実行:set test in Test := {}cleanassembly
MCW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.