Макдауэлл дал «стандартный» ответ об использовании Ant для вставки номера версии в файл Java и / или ресурс classpath. Однако мне никогда не нравился такой подход.
Альтернатива, которая использует поведение Java "она готова к запуску, как только скомпилируется", заключается в предоставлении вашему Version
классу main()
:
public class Version
{
public final static int MAJOR = 1;
public final static int MINOR = 0;
public final static int PATCH = 0;
public final static String VERSION_STRING = MAJOR + "." + MINOR + "." + PATCH;
public static void main(String[] argv)
throws Exception
{
System.out.println(VERSION_STRING);
}
}
Затем вы вызываете это с помощью задачи Ant <java>
, сохраняя вывод в свойстве.