Chciałbym, aby ustawienie sbt miało inną wartość podczas uruchamiania (sbt run
) niż w przypadku produkcji (sbt dist
/sbt start
).Różne ustawienia zadań rurociągu sbt-web w rozwoju w stosunku do produkcji?
W szczególności używam sbt-uglify. Używam go podczas programowania do łączenia zasobów javascript w jeden plik. Mam kompresję i maniakowanie wyłączone w rozwoju, ponieważ utrudnia to kodowanie debugowania.
W produkcji chciałbym użyć kompresji w celu usunięcia bloków kodu debugowania (if (DEBUG) { ... }
), co jest możliwe przy użyciu funkcji usuwania martwych kodów z uglifyjs.
Spodziewałem się to do pracy:
// "in Assets" to use uglify in dev & prod
pipelineStages in Assets := Seq(uglify)
// enable compression and mangling in prod
UglifyKeys.compress := true
UglifyKeys.mangle := true
// disable in development (DOESN'T WORK! Values are always true)
UglifyKeys.compress in Assets := false
UglifyKeys.mangle in Assets := false
Wykorzystanie 'w Assets' i prawdopodobnie nie jest Specyficzny dla 'pipelineStages'. Czy musisz uruchomić 'uglify' w dev? –
Służy on tylko do łączenia wszystkich '* .js' w jeden plik. Nie mogłem użyć 'sbt-concat' z powodów, których nie pamiętam. – dwickern