I have a Netbeans' module (Module.jar
) with a lot of dependencies declared on its pom.xml
:
<groupId>com.company</groupId>
<artifactId>module</artifactId>
<packaging>nbm</packaging>
...
<dependency>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-editor-lib</artifactId>
<version>${netbeans.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-editor-lib2</artifactId>
<version>${netbeans.version}</version>
</dependency>
...
<properties>
<netbeans.version>RELEASE701</netbeans.version>
</properties>
As you can see, the version is declared as the variable netbeans.version
.
Now I have two Netbeans Platform applications that use this module: ApplicationA
uses NB Platform version 6.9.1 and ApplicationB
uses NB Platform 7.0.1. Both will declare Module
as a dependency:
<dependency>
<groupId>com.company</groupId>
<artifactId>module</artifactId>
<version>3.0.10</version>
</dependency>
Module
compiles fine with both versions of the platform, but will only run properly if it was compiled with the same version of the libs the current application uses (i.e., Module
will only run properly on ApplicationA
if compiled with version 6.9.1, and will only run properly on ApplicationB
if compiled with version 7.0.1).
How/where can I define the variable netbeans.version
, so Module
will compile with the proper version of the libs according to the application that will use it?