如何让jaxb2-maven-plugin 2.3将Bean与META-INF生成在同一目录?
解决jaxb2-maven-plugin生成的sun-jaxb.episode文件位置问题
方案1:将episode文件放到Bean所在包目录
通过配置<episodeFile>参数,直接指定文件输出路径到Bean的包目录下,避免在src/main/java根目录生成META-INF目录。修改后的插件配置如下:
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> <version>2.3</version> <executions> <execution> <id>schema-x</id> <goals> <goal>xjc</goal> </goals> <configuration> <xjbSources> <xjbSource>src/main/resources/path/to/file.xjb</xjbSource> </xjbSources> <sources> <source>src/main/resources/path/to/file.xsd</source> </sources> <packageName>x.y.z</packageName> <outputDirectory>${basedir}/src/main/java</outputDirectory> <clearOutputDir>false</clearOutputDir> <!-- 指定episode文件输出到Bean所在包目录 --> <episodeFile>${basedir}/src/main/java/x/y/z/sun-jaxb.episode</episodeFile> </configuration> </execution> </plugin> </plugins> </build>
若希望保留META-INF目录结构,把文件放到src/main/java/x/y/z/META-INF下,只需修改<episodeFile>路径:
<episodeFile>${basedir}/src/main/java/x/y/z/META-INF/sun-jaxb.episode</episodeFile>
方案2:将episode文件移到Maven资源目录(推荐)
遵循Maven规范,把配置类资源放到src/main/resources目录下,避免污染源码目录:
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> <version>2.3</version> <executions> <execution> <id>schema-x</id> <goals> <goal>xjc</goal> </goals> <configuration> <xjbSources> <xjbSource>src/main/resources/path/to/file.xjb</xjbSource> </xjbSources> <sources> <source>src/main/resources/path/to/file.xsd</source> </sources> <packageName>x.y.z</packageName> <outputDirectory>${basedir}/src/main/java</outputDirectory> <clearOutputDir>false</clearOutputDir> <!-- 指定episode文件输出到资源目录的META-INF下 --> <episodeFile>${basedir}/src/main/resources/META-INF/sun-jaxb.episode</episodeFile> </configuration> </execution> </plugin> </plugins> </build>
不设置时的处理
如果不指定<packageName>,Bean会采用XSD中定义的默认包(比如com.example.schema),只需将<episodeFile>路径对应改为默认包的目录即可,示例:
<episodeFile>${basedir}/src/main/java/com/example/schema/sun-jaxb.episode</episodeFile>
内容的提问来源于stack exchange,提问作者TCH
相关产品推荐
相关产品推荐

