How do I set the version number?
There are two ways to set the version number shown in the Help… About dialog.
-
The easy way is to set the system property
netbeans.buildnumber
to some value in your application. -
The harder way is to put this key/value
currentVersion=My Product 1.2.3
into the file named"branding/modules/org-netbeans-core.jar/org/netbeans/core/ui/Bundle.properties"
below your suite, then rebuild and run. -
In NB 6.5 and later is the file location different:
"branding/core/core.jar/org/netbeans/core/startup/Bundle.properties"
How do I set the version number automatically in maven-based applications?
Within your branding-module use Maven placeholders in Bundle.properties and within the pom.xml filter the bundle by the maven-resources-plugin.
Note: Some of the files below are ignored by default in version control by Netbeans so you might need to add them to preserve the changes.
src/main/nbm-branding/core/core.jar/org/netbeans/core/startup/Bundle.properties:
currentVersion=My app ${project.version}
LBL_splash_window_title=Starting My app ${project.version}
src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/view/ui/Bundle.properties:
CTL_MainWindow_Title=My app ${project.version}
CTL_MainWindow_Title_No_Project=My app ${project.version}
src/main/nbm-branding/modules/org-netbeans-core.jar/org/netbeans/core/ui/Bundle.properties:
LBL_ProductInformation=My app ${project.version}
pom.xml:
<build>
<resources>
<resource>
<directory>${basedir}/src/main/nbm-branding</directory>
<!-- f.e. allow replacing ${project.version} in all property files below src/main/nbm-branding -->
<includes>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering>
<targetPath>${basedir}/target/filtered-nbm-branding</targetPath>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>nbm-maven-plugin</artifactId>
<configuration>
<!-- use previously filtered branding sources -->
<brandingSources>${basedir}/target/filtered-nbm-branding</brandingSources>
</configuration>
</plugin>
<!-- ... -->
</plugins>
</build>