К сожалению, для jar-манифестов нет стандарта нумерации версий.
Но, на самом деле, есть еще один стандартный способ автоматического обновления номера ревизии. Вы можете использовать svn: ключевые слова в чтобы получать текущий номер ревизии в ваших файлах после каждого коммита. Существует свойство $Revision$
для подстановки ревизии и $HeadURL$
для подстановки URL-адреса репозитория. Вам просто нужно вставить в файл следующую строку и поместить этот файл в систему управления версиями:
$Revision$ $HeadURL$
Если вы создаете манифест на лету с помощью maven, я бы рекомендовал поместить следующий контент в version.properties
файл:
revision=$Revision$
repourl=$HeadURL$
Затем включите в pom.xml
с помощью оператора (в maven должен быть включен плагин свойств):
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>version.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
And then you will be able to put revision number and repo url to the manifest:
<manifest>
<attribute name="Revision" value="${revision}" />
<attribute name="Repository URL" value="${repourl}" />
</manifest>
Также обратите внимание, что вам нужно будет явно включить svn:keywords
, используя свойства Subversion, чтобы $Revision$
и $HeadURL$
подставляли в вашем файле фактические значения. Если вы решите использовать version.properties
, вам нужно будет выполнить следующую команду:
svn propset svn:keywords Revision version.properties
svn propset svn:keywords HeadURL version.properties
person
altern
schedule
19.01.2012