我正在尝试使用jaxb2-maven-plugin maven插件从xsd生成bean,但是每次生成bean时都会收到以下警告。请注意,结果bean工作。 有谁知道为什么会这样?
--snip--
[INFO] task-segment: [deploy]
[INFO] ------------------------------------------------------------------------
[INFO] [jaxb2:xjc {execution: default}]
[INFO] Generating source...
[INFO] parsing a schema...
[INFO] compiling a schema...
[WARNING] null[-1,-1]
org.xml.sax.SAXParseException: generating code
at com.sun.tools.xjc.ErrorReceiver.debug(ErrorReceiver.java:113)
at com.sun.tools.xjc.Driver.run(Driver.java:315)
at org.codehaus.mojo.jaxb2.XjcMojo.execute(XjcMojo.java:301)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
--snip--
这是pom.xml中的配置
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
<configuration>
<packageName>com.some.package.jaxb</packageName>
<verbose>true</verbose>
</configuration>
</plugin>
虽然我认为我在技术上使用2.0.3(而不是2.0),但这是启动此问题的代码行: http://grepcode.com/file/repo1.maven.org/maven2/com.sun.xml.bind/jaxb-xjc/2.0/com/sun/tools/xjc/Driver.java#315
**如果我在pom中将verbose设置为false,则不会收到警告。这只是一个草率的记录机制吗? **
由于
- 马蒂亚斯
答案 0 :(得分:9)
“问题”在于详细选项设置为true - 它会将其取出,警告消失。
答案 1 :(得分:5)
@lexicore,你是对的。看起来你的“事实上”标准实际上是一个更好的选择,并且效果一样好。为了记录,这是关于differences的好读物。
这是我使用的配置。我无法追踪它的回购。希望这有助于某人:
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.7.4</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<verbose>true</verbose>
<schemaDirectory>src/main/xsd</schemaDirectory>
<generatePackage>com.ninja.jaxb</generatePackage>
</configuration>
</plugin>
...
<repositories>
<repository>
<id>maven-repo2</id>
<name>Maven Repository</name>
<url>http://repo2.maven.org/maven2</url>
</repository>
</repositories>