在jaxb2-maven-plugin中为schemagen添加显式源目录

时间:2014-01-23 03:49:11

标签: maven jaxb jaxb2 maven-jaxb2-plugin jaxb2-maven-plugin

我想从JAXB注释类生成模式。为此,我使用的是jaxb2-maven-plugin。该插件默认扫描src / main / java文件夹以查找包含的源。我想指定一个额外的文件夹来扫描不是maven源路径的java类。

有人可以帮忙吗?

  <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jaxb2-maven-plugin</artifactId>
        <version>${maven.plugin.jaxb2}</version>
        <executions>
           <execution>
              <id>schemagen</id>
              <goals>
                 <goal>schemagen</goal>
              </goals>
              <phase>process-classes</phase>
              <configuration>

                 <includes>
                    <include>SomeFolderWhichIsNotInMavenSourcePath/*.java</include>
                 </includes>
                 <outputDirectory>${project.build.directory}/schemas</outputDirectory>
              </configuration>
           </execution>
        </executions>
     </plugin> 

2 个答案:

答案 0 :(得分:0)

包含应该是目录的绝对路径:

<includes>
    <include>${basedir}/src/main/java</include>
</includes>

您可以在调试模式下运行maven以查看正在使用的源目录。

答案 1 :(得分:0)

您需要使用 sources 而不是 includes

<sources>
   <source>${basedir}/src/main/java/<YourPath></source>
</sources>

通过这种方式,它将仅扫描您在源代码标签之间编写的路径。