Обратите внимание, что вы можете создавать манифест на лету с помощью задачи ant и динамически устанавливать свойства.
Во-первых, вы должны обновить файл «project.properties» Netbeans, находящийся в каталоге «nbproject». Добавьте следующую строку в файл:
manifest.file=manifest.mf
Затем создайте задачу ant для создания / обновления манифеста, используя файл "build.xml". В этом примере мы установим номер версии и дату файла JAR.
<target name="-pre-init">
<property name="project.name" value="My Library" />
<property name="version.num" value="1.4.1" />
<tstamp>
<format property="NOW" pattern="yyyy-MM-dd HH:mm:ss z" />
</tstamp>
<!--
<exec outputproperty="svna.version" executable="svnversion">
<arg value="-c" />
<redirector>
<outputfilterchain>
<tokenfilter>
<replaceregex pattern="^[0-9]*:?" replace="" flags="g"/>
<replaceregex pattern="M" replace="" flags="g"/>
</tokenfilter>
</outputfilterchain>
</redirector>
</exec>
-->
<manifest file="MANIFEST.MF">
<attribute name="Bundle-Name" value="${project.name}" />
<attribute name="Bundle-Version" value="${version.num}" />
<attribute name="Bundle-Date" value="${NOW}" />
<!--<attribute name="Bundle-Revision" value="${svna.version}" />-->
<attribute name="Implementation-Title" value="${project.name}" />
<attribute name="Implementation-Version" value="${version.num}" />
<attribute name="Implementation-URL" value="http://www.example.com" />
</manifest>
</target>
Это создаст файл манифеста в директории вашего проекта NetBeans и поместит его в ваш JAR-файл. Если вы хотите удалить автоматически сгенерированный файл манифеста из каталога проекта netbeans, просто создайте еще одну задачу ant (конечно, после jar):
<target name="-post-jar">
<delete file="MANIFEST.MF"/>
</target>