jaxb2-maven-plugin将classpath添加到生成的源中

时间:2016-03-12 19:31:19

标签: java xml maven jaxb

我使用codehaus jaxb-maven-plugin从xml架构创建java类:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxb2-maven-plugin</artifactId>
            <version>2.2</version>
            <executions>
                <execution>
                    <id>xjc</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xjc</goal>
                    </goals>
                    <configuration>
                        <sources>
                            <source>src/my.xsd</source>
                        </sources>                           
                            <packageName>mypackage</packageName>
                    </configuration>
                </execution>
            </executions>
         </plugin>

这些类按预期生成target/generated-sources/jaxb,但此路径未添加到类路径中。

因此,如果我在其他(未生成的)类中使用某些生成的类,maven在编译过程中无法找到它。

有什么想法吗? TIA!

2 个答案:

答案 0 :(得分:3)

这是jaxb2-maven-plugin中的一个错误:

https://github.com/mojohaus/jaxb2-maven-plugin/issues/44

答案 1 :(得分:0)

我正在使用插件2.2版运行MacOS El Capitain,如果运行“mvn clean compile”,则会正确生成源路径。 如果随后运行“mvn compile”,则源路径不包括生成文件的路径。

正确:在第一次调用期间

User ID | Email
Jack    | Jack@gmail
Diane   | Diana@aol.com

缺少jaxb路径:

-sourcepath /Users/nastacio/rsawga-rtc/workspace_trunk/ml-common/src/main/java:/Users/nastacio/rsawga-rtc/workspace_trunk/ml-common/target/generated-sources/jaxb: