Что имеет приоритет SBT_OPTS или .sbtopts?

#sbt

#sbt

Вопрос:

Я видел оба упомянутых в статьях, блогах и ответах SO, но неясно, что я должен использовать в своих проектах?

Ответ №1:

Ответ находится в команде справки

   # jvm options and output control
  JAVA_OPTS           environment variable, if unset uses "$default_java_opts"
  .jvmopts            if this file exists in the current directory, its contents
                      are appended to JAVA_OPTS
  SBT_OPTS            environment variable, if unset uses "$default_sbt_opts"
  .sbtopts            if this file exists in the current directory, its contents
                      are prepended to the runner args
  /etc/sbt/sbtopts    if this file exists, it is prepended to the runner args
  -Dkey=val           pass -Dkey=val directly to the java runtime
  -J-X                pass option -X directly to the java runtime
                      (-J is stripped)
  -S-X                add -X to sbt's scalacOptions (-S is stripped)
In the case of duplicated or conflicting options, the order above
shows precedence: JAVA_OPTS lowest, command line options highest.
  

Поскольку опции, расположенные ниже по списку, имеют более высокий приоритет, мы можем предположить, что они .sbtopts имеют приоритет над SBT_OPTS . Это имеет смысл, поскольку вы могли бы настроить SBT_OPTS в своем .bashrc , и должен быть способ автоматического переопределения его для каждого проекта, который .sbtopts предоставляет.