我有一个包含更多模块的java项目。在某些模块中,我使用了一个插件。 在该插件中,我需要从其依赖项中覆盖一个。到现在为止还挺好。解决了在插件定义中添加所需依赖项的问题。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xdoclet-maven-plugin</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xjavadoc</artifactId>
<version>1.5-SNAPSHOT</version>
</dependency>
</dependencies>
...
但在其中一个模块中,我需要用其他版本覆盖该依赖项。我尝试以覆盖的相同方式解决这个问题。 如果我只编译该子模块,则使用正确的依赖版本,但是如果我编译整个项目它不起作用,因为它使用来自插件的其他模块的依赖关系而不是模块pom中指定的依赖关系。
知道如何解决我的问题吗?
最好的问候,菲利普
答案 0 :(得分:1)
您可以为插件版本创建属性,例如xdoclet.version
并使用它来覆盖父版本。
<properites>
<xdoclet.version>1.5-SNAPSHOT</xdoclet.version>
</properties>
...
<plugin>enter code here
<groupId>org.codehaus.mojo</groupId>
<artifactId>xdoclet-maven-plugin</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xjavadoc</artifactId>
<version>${xdoclet.version}</version>
</dependency>
</dependencies>
...