未生成剧集文件
Episode file not being generated
我正在使用 maven-jaxb2-plugin 构建一个项目
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
我设置了剧集参数
<episode>true</episode>
但是我发现没有生成 .episode 文件。我需要这个文件,以便这个项目可以用作另一个依赖项目的剧集。
在 Maven 构建日志中,我确实看到了这些日志,这些日志表明插件不支持 xjc 支持的 episode 和 episodeFile 参数:
[WARNING] Unknown plugin option: -episode
[WARNING] Unknown plugin option: C:\projecdir\src\main\generated-sources\META-INF\sun-jaxb.episode
这是插件中的错误吗?也有任何已知的解决方法。
更新:当useDependenciesAsEpisodes
不为false
时会发生一些奇怪的事情
useDependenciesAsEpisodes = true
如果这是真的,它会显示上面的警告。此版本有效,但未生成剧集文件。
useDependenciesAsEpisodes = false
当我将其设置为 false 时,会生成剧集文件。
然而,我为一个破坏构建的插件传递了一些额外的参数。
<args>
<arg>-typeId=7000</arg>
...
</args>
错误:
Caused by: com.sun.tools.xjc.BadCommandLineException: unrecognized parameter -typeId=7000
at com.sun.tools.xjc.Options.parseArguments(Options.java:817)
at org.jvnet.mjiip.v_2.OptionsFactory.createOptions(OptionsFactory.java:91)
... 24 more
我必须删除额外的参数才能让它工作。但是,我需要一些与 maven-jaxb2-plugin
一起使用的 jaxb 插件(如所示 here)的参数
<configuration>
<extension>true</extension>
<args>
<arg>-XtoString</arg>
<arg>-Xequals</arg>
<arg>-XhashCode</arg>
<arg>-Xcopyable</arg>
</args>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version><!-- version --></version>
</plugin>
</plugins>
</configuration>
maven-jaxb2-plugin and jaxb2-basics 的作者在这里。
每个版本的剧集生成是 tested quite thoroughly,所以我很确定它有效。
useDependenciesAsEpisodes
只是将所有依赖 JAR 添加为 "episode" JAR,这不应该影响剧集生成。
-typeId=7000
有点可疑,这个命令是哪个XJC插件处理的?如果 none,这可能会干扰 -episode
,所以这是我首先要查看的地方。
真正有帮助的是查看 mvn clean install -e -X
日志。它应该找到最终传递给 XJC 的参数,所以你可以在那里发现违规行为。
如果没有任何帮助,请将一个最小的复制测试项目放在一起,然后 commint/send 我在 https://github.com/highsource/maven-jaxb2-plugin-support ex 中为这个项目提交 PR。在 e/episode-file-not-being-generated
.
下
我正在使用 maven-jaxb2-plugin 构建一个项目
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
我设置了剧集参数
<episode>true</episode>
但是我发现没有生成 .episode 文件。我需要这个文件,以便这个项目可以用作另一个依赖项目的剧集。
在 Maven 构建日志中,我确实看到了这些日志,这些日志表明插件不支持 xjc 支持的 episode 和 episodeFile 参数:
[WARNING] Unknown plugin option: -episode
[WARNING] Unknown plugin option: C:\projecdir\src\main\generated-sources\META-INF\sun-jaxb.episode
这是插件中的错误吗?也有任何已知的解决方法。
更新:当useDependenciesAsEpisodes
不为false
useDependenciesAsEpisodes = true
如果这是真的,它会显示上面的警告。此版本有效,但未生成剧集文件。
useDependenciesAsEpisodes = false
当我将其设置为 false 时,会生成剧集文件。
然而,我为一个破坏构建的插件传递了一些额外的参数。
<args>
<arg>-typeId=7000</arg>
...
</args>
错误:
Caused by: com.sun.tools.xjc.BadCommandLineException: unrecognized parameter -typeId=7000
at com.sun.tools.xjc.Options.parseArguments(Options.java:817)
at org.jvnet.mjiip.v_2.OptionsFactory.createOptions(OptionsFactory.java:91)
... 24 more
我必须删除额外的参数才能让它工作。但是,我需要一些与 maven-jaxb2-plugin
一起使用的 jaxb 插件(如所示 here)的参数<configuration>
<extension>true</extension>
<args>
<arg>-XtoString</arg>
<arg>-Xequals</arg>
<arg>-XhashCode</arg>
<arg>-Xcopyable</arg>
</args>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version><!-- version --></version>
</plugin>
</plugins>
</configuration>
maven-jaxb2-plugin and jaxb2-basics 的作者在这里。
每个版本的剧集生成是 tested quite thoroughly,所以我很确定它有效。
useDependenciesAsEpisodes
只是将所有依赖 JAR 添加为 "episode" JAR,这不应该影响剧集生成。
-typeId=7000
有点可疑,这个命令是哪个XJC插件处理的?如果 none,这可能会干扰 -episode
,所以这是我首先要查看的地方。
真正有帮助的是查看 mvn clean install -e -X
日志。它应该找到最终传递给 XJC 的参数,所以你可以在那里发现违规行为。
如果没有任何帮助,请将一个最小的复制测试项目放在一起,然后 commint/send 我在 https://github.com/highsource/maven-jaxb2-plugin-support ex 中为这个项目提交 PR。在 e/episode-file-not-being-generated
.