Ещё такой странный вопрос появился. Я помню что в c++ есть препроцессор/макросы. Директивами ifdef можно было управлять какие куски кода/фичи включать в результирующую сборку, а какие нет, задавая некоторые константы компилятору/билд тулу. Для java я нагуглил manifold есть. Быть может у кого-то есть опыт использования подобных вещей или есть что-то лучше именно для scala
Опенсорс авторы сталкиваются с этой проблемой, когда нужно поддерживать проект для разных версий скалы и скалы-жс.
Это решается созданием отдельных build directories и трюками с наследованием: MyService extends MyServiceVersionSpecific
.
Можно попробовать делать так же. В билд конфигурации нужно будет задать нужные build directories для конкретного типа релиза.