如何在子POM中继承Maven插件条目

时间:2013-07-24 15:40:58

标签: maven maven-jaxb2-plugin

我在我的孩子POM中添加了以下插件,并且它正常工作。 如果我在我的父POM中添加相同的插件,它不起作用,我希望将其添加到我的父POM中并在我的子POM中继承它。

你能帮忙怎么做?

<plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <source>1.6</source>
              <target>1.6</target>
              <compilerArguments>                   <endorseddirs>${project.build.directory}/endorsed</endorseddirs>
              </compilerArguments>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.3</version>
            <executions>
              <execution>
                <phase>validate</phase>
                <goals>
                  <goal>copy</goal>
                </goals>
                <configuration>
                  <outputDirectory>${project.build.directory}/endorsed</outputDirectory>
                  <silent>true</silent>
                  <artifactItems>
                    <artifactItem>
                      <groupId>javax.xml.bind</groupId>
                      <artifactId>jaxb-api</artifactId>
                      <version>2.2.4</version>
                      <type>jar</type>
                    </artifactItem>
                    <artifactItem>
                      <groupId>javax.xml.ws</groupId>
                      <artifactId>jaxws-api</artifactId>
                      <version>2.2.8</version>
                      <type>jar</type>
                    </artifactItem>
                  </artifactItems>
                </configuration>
              </execution>
            </executions>
          </plugin>

1 个答案:

答案 0 :(得分:1)

据我所知,您需要在<build><plugins><plugin>级别为您需要的每个pom配置依赖关系。

我所知道的最接近的事情是,通过使用variables或使用<dependencyManagement>,您可以从父pom继承信息。但我不认为要么真的适用于你所要求的。

请注意,<dependencyManagement>仅管理整个项目中的依赖项信息,例如版本。除非在<dependencies>部分后面再次明确定义,否则它实际上不会创建依赖关系。您可以参考maven documentation了解更多信息。