У нас есть репозиторий git, который содержит источник для нескольких связанных Java WAR и JAR. Было бы неплохо, если бы код Java мог как-то:
System.err.println("I was built from git commit " + commitID);
(Очевидно, что реальный код может помещать это в HTTP-заголовок, регистрировать его при запуске или что-то еще, что не важно сейчас)
Мы используем Ant для сборки (по крайней мере для производственных сборок, кажется, что некоторые программисты выполняют свои тесты изнутри Eclipse, о которых я знаю даже меньше).
Есть ли канонический способ получить идентификатор фиксации для текущей проверки git в нашей Java во время сборки? Если нет, могут ли люди, использующие Ant для сборки, предлагать, как они это сделают, и мы увидим, появляется ли каноническое решение? Я уверен, что могу полностью придумать что-то из цельной ткани, но это похоже на многоразовый блок, поэтому я бы предпочел не делать этого.