【问题标题】:Compilation Failure when compiling class generated by jaxb编译 jaxb 生成的类时编译失败
【发布时间】:2013-05-12 11:37:04
【问题描述】:

编译带有注释的 JAXB 生成的类时出现以下错误:

-source 1.3 不支持注释(使用 -source 5 或更高版本 启用注释)@XmlAccessorType(XmlAccessType.FIELD)

-source 1.3 不支持注释(使用 -source 5 或更高版本 启用注释)@XmlRegistry

...

对于所有的注解。

我尝试过使用 jdk 1.6 或 jdk1.7,都导致相同的错误。

有人看过这个吗?

我正在使用 maven-compiler-plugin

[DEBUG] 跟踪 org.apache.maven.BuildFailureException:编译 失败在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:715) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) 在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) 在 org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 在 org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) 在 org.codehaus.classworlds.Launcher.launch(Launcher.java:255) 在 org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 在 org.codehaus.classworlds.Launcher.main(Launcher.java:375) 引起 作者:org.apache.maven.plugin.CompilationFailureException:编译 失败在 org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:516) 在 org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:114) 在 org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) ... 17 更多

谢谢你, 呼。

【问题讨论】:

    标签: java xml jaxb


    【解决方案1】:

    默认情况下,Maven 编译器插件会尝试在 Java 的最低级别进行编译。因此,即使您使用的是 Java 6 或 7,它也会尝试编译 Java 1.3 应用程序。您可以通过将以下内容添加到您的 pom 来更改它:

    <project>
      [...]
      <build>
        [...]
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
              <source>1.5</source>
              <target>1.5</target>
            </configuration>
          </plugin>
        </plugins>
        [...]
      </build>
      [...]
    </project>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-04
      • 1970-01-01
      • 2021-10-07
      • 2011-03-09
      • 2011-09-27
      • 1970-01-01
      • 1970-01-01
      • 2016-09-15
      相关资源
      最近更新 更多