【问题标题】:Eclipse error message for jvnet maven-jaxb2-plugin version 0.13.0jvnet maven-jaxb2-plugin 版本 0.13.0 的 Eclipse 错误消息
【发布时间】:2016-03-09 18:51:09
【问题描述】:

我正在尝试使用来自 GitHub https://github.com/highsource/maven-jaxb2-plugin/releases 的 jvnet maven-jaxb2-plugin 的示例 JAXB Maven 项目。我正在使用最新版本 0.13.0 并下载了 maven-jaxb2-plugin-sample-jaxbplugins-0.13.0-maven-src.zip

我成功地通过命令行运行 mvn clean install。但是当我将它导入 Eclipse Luna 时,我收到如下错误消息:

目标的执行默认值 org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.13.0:generate failed: A 执行时缺少所需的类 org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.13.0:generate: com/sun/xml/bind/api/ErrorListener

有趣的是,我仍然可以使用 Maven 工具作为 Maven 安装运行并获取生成的类。但是错误消息让我很烦。那是一些 Eclipse 错误还是什么?请帮忙。

这是 pom.xml 的核心部分

<dependencies>
    <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>2.2.11</version>
    </dependency>
    <dependency>
        <groupId>org.jvnet.jaxb2_commons</groupId>
        <artifactId>jaxb2-basics-runtime</artifactId>
        <version>0.9.0</version>
    </dependency>
</dependencies>
<build>
    <defaultGoal>install</defaultGoal>
    <plugins>
    <plugin>
        <groupId>org.jvnet.jaxb2.maven2</groupId>
        <artifactId>maven-jaxb2-plugin</artifactId>
        <version>0.13.0</version>
        <executions>
            <execution>
                <goals>
                    <goal>generate</goal>
                </goals>
                <configuration>
                    <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>0.9.0</version>
                    </plugin>
                    </plugins>
                </configuration>
            </execution>
        </executions>
    </plugin>
    </plugins>
</build>

【问题讨论】:

    标签: java eclipse maven jaxb maven-jaxb2-plugin


    【解决方案1】:

    我可以通过在我的 eclipse ini 中添加以下行来摆脱这些“问题”,如下所述:

    http://diggingthroughcode.blogspot.de/2016/05/trouble-with-maven-jaxb2-plugin-and.html

    -vm
    C:\Program Files\Java\jdk1.8.0_92\bin\javaw.exe
    

    按 Alt+F5(更新项目)后一切正常。

    我的设置 java: 1.8.0_92 / eclipse: Luna SR2 (4.4.2) = STS 3.7.0

    【讨论】:

      【解决方案2】:

      请发送Run as > Maven build... > Goals: clean generate-resources > Debug Output > Run 并发布完整日志(pastebin 或其他)。

      我怀疑你有一些过时的 JDK,但很难说。我无法使用 Ecliplse Luna 4.4.0 和 Java 1.7.0_51 重现这一点。

      免责声明:我是maven-jaxb2-plugin 的作者。

      【讨论】:

      • 谢谢。我实际上正在使用 Ecliplse Luna 4.4.1 和 Java 1.8.0_40 这里是 pastebin 的链接pastebin.com/4ky2GJs7
      • @ lexicore 该消息出现在 Eclipse 的“问题”视图中。我可以删除它,但它会在 Maven 项目更新后再次显示。我只是在另一个带有 Eclipse Kepler 和 Java 1.6.0_45 的系统中尝试这个项目,一切都很好。我应该责怪 Luna 和 Java 1.8 的结合吗??
      • @dunfa 尝试先挑出 Eclipse 与 Java 版本。
      • 我可以使用 IBM JVM (J9) v1.6 100% 重现此错误...你依赖私有 api 吗?
      • @spi 确保 Eclispe 使用来自另一个答案的 -vm ... 技巧使用 JDK。不,该插件不依赖于“私有”API。
      【解决方案3】:

      安装 JDK 9 后,我在 CLI 上遇到了这个问题;在这种情况下,在运行 mvn clean jaxb2:generate 之前将 JAVA_HOME 设置为 JDK 8:

      export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/
      

      【讨论】:

        猜你喜欢
        • 2015-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-12
        • 2016-04-13
        • 1970-01-01
        相关资源
        最近更新 更多