Какая информация требуется в boot.properties?

Я хочу указать версию Clojure для моего проекта, который использует Boot. Согласно Boot Wiki, способ сделать это путем предоставления значения для BOOT_CLOJURE_VERSION в boot.properties файл в корне моего проекта. Итак, я сделал это:

$ cat boot.properties
BOOT_CLOJURE_VERSION=1.7.0

Вроде работает просто отлично

$ tail -2 ~/.boot/boot.properties
BOOT_VERSION=2.5.5
BOOT_CLOJURE_VERSION=1.8.0
$ cat build.boot
(deftask version []
  (println "Clojure" (clojure-version))
  (println "Boot core" *boot-version*)
  (println "Boot app" *app-version*))
$ boot version
Clojure 1.7.0
Boot core 2.5.5
Boot app 2.5.5

Тем не менее, эта же вики-страница специально говорит о создании boot.properties файл как это:

$ boot -V > boot.properties

Это добавляет две строки в начале, которые выглядят как комментарии для меня, и одну в конце, которая указывает версию загрузки. У меня нет проблем с указанием загрузочной версии для моего проекта, но на вики-странице это звучит так, как будто это необходимо:

Примечание: при использовании boot.properties файл, который вы также должны прикрепить проект к конкретной версии загрузки, так как файл должен указывать обе переменные.

Я немного озадачен тем, почему на странице конкретно сказано добавить эти три строки в boot.properties при их пропущении не возникает никаких проблем. Кроме того, если я использую контроль версий, я не вижу необходимости ставить отметку времени в boot.properties, Можно ли пропустить эти строки? Если нет, зачем они нужны?

1 ответ

Решение

Это, скорее всего, случай устаревшей вики-информации. Из источника:

// BOOT_VERSION is decided by the loader; it will respect the
// boot.properties files, env vars, system properties, etc.
// or it will use the latest installed version.

Я полагаю, вы могли бы счесть целесообразным блокировать версию Clojure и Boot для каждого проекта, поскольку это предотвратит любые будущие проблемы, которые могут возникнуть из-за несовместимых версий.

2 строки комментариев, добавленные Boot, предназначены только для информационных целей и могут быть безопасно пропущены.

Другие вопросы по тегам