我有一个Netbeans模块(Module.jar
),在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>
如您所见,版本被声明为变量netbeans.version
。
现在我有两个使用此模块的Netbeans平台应用程序:ApplicationA
使用NB平台版本6.9.1而ApplicationB
使用NB平台7.0.1。两者都会将Module
声明为依赖:
<dependency>
<groupId>com.company</groupId>
<artifactId>module</artifactId>
<version>3.0.10</version>
</dependency>
Module
可以很好地编译平台的两个版本,但只有在使用当前应用程序使用的相同版本的lib编译时才能正常运行(即,Module
只能正常运行ApplicationA
如果使用版本6.9.1编译,并且只有在使用版本7.0.1编译时才能在ApplicationB
上正常运行。)
我如何/在哪里定义变量netbeans.version
,因此Module
将根据将使用它的应用程序使用适当版本的lib进行编译?
答案 0 :(得分:1)
您应该在应用程序和应用程序的诗歌中直接包含netbeans依赖项和正确的版本。这样您就可以获得此应用程序所需的确切版本。