Komut satırından testler olmadan sbt assembly komutunu nasıl çalıştırabilirim?


92

Soruları okudum: bu ve bu . Sbt dosyasını değiştirmeyi önerirler. Ama sbt clean assemblytestler olmadan çalıştırmak istiyorum ve sbt derleme dosyalarını değiştirmiyorum. SBT ile mümkün mü? Maven'de -DskipTest=trueparametre var, sbt için analog var mı?


buna ve buna ve resmi belgelere dayanarak hayır derim. Ya derleme dosyalarını değiştirmeniz ya da packageherhangi bir test çalıştırmadığı için çalıştırmanız gerekir.
DB5

Yanıtlar:


157

Herhangi bir özellik için komut satırında değiştirmeniz gereken, başına "set" ekleyin ve tırnak içine alın.

Windows için örnek:

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

Mac için örnek:

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

Düzenlendi. Alıntı yapmak pencerelerde oldukça farklıdır, bu yüzden bu cevabı sadece bu özel cevap için çift tırnak kullanarak insanların başlamasına yetecek kadar genel yapmaya çalışın. Genel olarak, ilke, tek bir argümanı, çoğu zaman kaçınılmaz olarak, sbttüm "setiniz ..." ile iletmek istemenizdir . Ayrıca, birden çok "set" ifadesini ayrı komut satırı argümanları olarak veya tek tırnaklı argüman içindeki ifadeleri noktalı virgülle ayırarak iletebileceğinizi unutmayın.
kshakir

1
Mac'te sbt 0.13.7 ben olsun <grubu>: 1: Hata: bulunamadı: değeri düzeneği [hata] "ifadesinde Tür hatası 13.8 vs 13,7 oranındaki bu gerçekten bir sorun mu?
Metropolis

12
Bu bir sbtsürüm sorunu olmayabilir , ancak daha eski olabilir sbt-assembly. Daha evrensel olanı deneyin "set test in Test := {}". Dizininizde hangi sürümü sbt-assemblylisteleniyor plugins? Her ikisi için docs 0.11.2 & 0.13.0 hem diyelim ki aynı yukarıdaki sözdizimini kullanmak içinde build.sbt. Ancak eski eklentiyi kullanırken bu ayarın sbt konsolu aracılığıyla ve dolayısıyla komut satırında kullanılamayacağını tahmin ediyorum.
kshakir

5
sbt 'set test in assembly := {}' clean assemblyhala macos üzerinde scalatest Specs çalıştırıyor /sbt 1.0
praagupd

2
Eğer iç yapıyorsan sbtistemi, hiçbir tırnak, üç ayrı görevler gibi onları çalıştırın: set test in Test := {}, clean,assembly
MCW
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.