jaxb2 maven插件在从XSD生成bean时总是打印警告

jaxb2 maven插件在从XSD生成bean时总是打印警告,jaxb,maven-plugin,Jaxb,Maven Plugin,我试图通过使用jaxb2 maven插件maven插件从xsd生成bean,但是每次生成bean时,我都会收到以下警告。请注意,结果bean是有效的有人知道为什么会发生这种情况吗? --snip-- [INFO] task-segment: [deploy] [INFO] ------------------------------------------------------------------------ [INFO] [jaxb2:xjc {execution: default

我试图通过使用jaxb2 maven插件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>

org.codehaus.mojo

**如果在pom中将verbose设置为false,则不会收到警告。这只是一个草率的日志记录机制吗**

谢谢


--马提亚斯,你说得对。看起来你的“事实上的”标准实际上是一个更好的选择,而且效果也一样好。为了记录在案,这是一本关于这个问题的好读物

这是我使用的配置。我很难追查到底是什么回购协议。希望这有助于某人:

        <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>

org.jvnet.jaxb2.maven2
maven-jaxb2-plugin
0.7.4
生成
真的
src/main/xsd
com.ninja.jaxb
...
maven-2
Maven存储库
http://repo2.maven.org/maven2

问题在于将verbose选项设置为true-如果将其删除,警告将消失。

为什么不使用事实上的标准呢?您为另一个maven插件提供了解决方案(使用groupId org.jvnet.jaxb2.maven2而不是org.codehaus.mojo)。