How do I set a system property for my project in sbt?

pr1001 picture pr1001 · Jun 27, 2010 · Viewed 16.6k times · Source

I'm sure I'm missing something really simple... I want to set the system property java.awt.headless to true for my sbt project. Reading the page on properties I think that I need to use system or systemOptional. In my project file I've tried things like:

lazy val javaAwtHeadless = system[Boolean]("java.awt.headless")

Setting it as a user property (e.g. lazy val javaAwtHeadless = property[Boolean]) and setting the accompanying value in build.properties made the property visible in the sbt console but not within sbt's Scala console (via System.getProperty("java.awt.headless")).

set java.awt.headless true from the sbt console works, including being set in the Scala console, but it doesn't persist to the next time I launch sbt.

Answer

retronym picture retronym · Jun 27, 2010

A straightforward method would be to edit the batch file or shell script that you use to run sbt and add -Dprop=val