我接管了一个使用 maven-jaxb2-plugin 的 Java 项目的所有权。一切都可以正常编译,但是,它不会将 xsd 文件放入生成的 .jar 文件中。
我唯一能想到的不同之处是我的 .xsd 文件过去位于文件夹 src/main/resources 中,现在它们驻留在名为 xsd 的文件夹中.
src/main/resources 文件夹是 maven(或 jaxb?)在打包 .jar 文件时查找内容的默认文件夹名称吗?如果是这样,我该如何添加/更改默认值?
这是我的 jaxb 插件配置:
<build>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<configuration>
<catalog>xsd/catalog.xml</catalog>
<catalogResolver>org.jvnet.jaxb2.maven2.resolver.tools.ClasspathCatalogResolver</catalogResolver>
<extension>true</extension>
<schemaDirectory>${basedir}/xsd</schemaDirectory>
<schemaIncludes>
<include>core-types.xsd</include>
</schemaIncludes>
</configuration>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
谢谢。
最佳答案
是的,“src/main/resources”数据默认包含在 jar 中。
您可以在 example here 之后添加其他资源(首先在 google 上搜索“maven 资源文件夹”)。
关于java - 使用 Maven Jaxb 编译时如何在目标 Jar 文件中包含 Xml 模式/资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14387801/