Pregunta

Estoy seguro de que me falta algo muy simple ... Quiero establecer la propiedad del sistema java.awt.headless a true para mi proyecto SBT. La lectura de la página sobre las propiedades Creo que necesito utilizar system o systemOptional. En mi archivo de proyecto que he probado cosas como:

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

Si lo establece como una propiedad de usuario (por ejemplo lazy val javaAwtHeadless = property[Boolean]) y establecer el valor que acompaña en build.properties hecho la propiedad visible en la consola SBT pero no dentro de la consola Scala de SBT (a través de System.getProperty("java.awt.headless")).

set java.awt.headless true de las obras de la consola de SBT, incluyendo el ser conjunto en la consola Scala, pero no persiste en el tiempo siguiente, lanzamiento SBT.

¿Fue útil?

Solución

Un método sencillo consiste en editar el archivo por lotes o secuencia de comandos shell que se utiliza para ejecutar sbt y añadir -Dprop=val

Otros consejos

Si necesitaba esta opción para todas las tareas de SBT, me puse como sigue en build.sbt

javaOptions += "-Djava.awt.headless=true" 

Si fuera sólo para una tarea, por ejemplo: ejecución, puede que alcance:

javaOptions in Runtime += "-Djava.awt.headless=true" 

Si usted está tratando de establecer las propiedades de SBT, como la configuración de plug-in, entonces la siguiente trabajó para mí con 0.13+. El siguiente trabajo sin embargo lo hizo, cuando se trata de pasar de la configuración Liquibase, como contraseña, de nuestros marcos de CI.

En su build.sbt

feo, pero los suministros por defecto, y agarra opcionalmente de System.properties . De esta manera usted tiene sus casos de anulación por defecto y cubiertos.

def sysPropOrDefault(propName:String,default:String):String = Option(System.getProperty(propName)).getOrElse(default)

liquibaseUsername := sysPropOrDefault("liquibase.username","change_me")
liquibasePassword := sysPropOrDefault("liquibase.password","chuck(\)orris")

Desde la línea de comandos

Ahora acaba de habilitación a través del -Dprop=value igual que lo haría con Maven u otros programas de JVM. Nota apoyos aparecen antes de tarea SBT.

sbt -Dliquibase.password="shh" -Dliquibase.username="bob" liquibase:liquibase-update

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top