Pass parameter to scala sbt from command line.

If you need to pass a parameter to your sbt build you have to use -D command and then put key=value pair.

In the sbt file you can read it by calling System.getProperty("key").

Here is an complete example with scala Option to provide fallback for default value.

1. In terminal, start sbt with parameter

sbt -DmyParameter=myValue

2. Read myParameter value in the build.sbt file

val myParameterOrdefaultValue = Option(System.getProperty("myParameter")).getOrElse("defaultValue")

You can of course pass parameters and call sbt tasks:

sbt -DmyParameter=myValue testOnly *ImpotantTest*

As you see it is not hard but unfortunately bad documented.

Informacje o @albgorski

Od 1999 roku profesjonalnie zajmuję się rozwijaniem oprogramowania. Głównie Java, ale także Groovy, PHP, HTML, JavaScript oraz Adobe Flex. Fascynują mnie metody wymiany danych, ich przechowywania oraz dostępowania. Jestem WIELKIM zwolennikiem Clean Code, TDD oraz agilistą (może lepiej lean-istą). Ekosystem Java dostarcza WIELE świetnych frawework-ów i bibliotek, a społeczność miłośników języka Java jest najlepsza pod słońcem :)
Ten wpis został opublikowany w kategorii scala i oznaczony tagami , , , . Dodaj zakładkę do bezpośredniego odnośnika.

Możliwość komentowania jest wyłączona.