Java 9 的 Maven 编译问题

2024-01-05

尝试使用 JDK 9.0.1 编译 Maven 项目时,我遇到了这个堆栈跟踪,但没有太多解释:

Exception in thread "main" java.lang.AssertionError
at jdk.compiler/com.sun.tools.javac.util.Assert.error(Assert.java:155)
at jdk.compiler/com.sun.tools.javac.util.Assert.check(Assert.java:46)
at jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:250)
at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.readSourceFile(JavaCompiler.java:821)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ImplicitCompleter.complete(JavacProcessingEnvironment.java:1510)
at jdk.compiler/com.sun.tools.javac.code.Symbol.complete(Symbol.java:633)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1314)
at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.complete(Type.java:1139)
at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.getTypeArguments(Type.java:1065)
at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:237)
at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:52)
at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.accept(Type.java:992)
at jdk.compiler/com.sun.tools.javac.code.Printer.visit(Printer.java:136)
at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:197)
at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:165)
at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111)
at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67)
at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:183)
at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:165)
at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111)
at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67)
at jdk.compiler/com.sun.tools.javac.util.JCDiagnostic.getMessage(JCDiagnostic.java:771)
at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.getMessage(ClientCodeWrapper.java:799)
at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:131)
at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:174)
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1075)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:168)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

不太确定是什么原因造成的,这是 JDK 中的错误吗?

额外细节:

  • Maven 3.5.0 与 maven-compiler-plugin 3.7.0
  • 我只是执行 mvn clean install
  • 不幸的是,源代码不是开源的,所以我不能随意分享它
  • 还没有 module-info.java 文件,我只是尝试使用 Java 9 编译一个项目
  • 奇怪的是,如果我将源代码级别保留在 1.8,代码会编译,但如果我将其指定为 9,则会失败并出现上述异常

只需添加这个

<forceJavacCompilerUse>true</forceJavacCompilerUse>

添加到 POM 中的 Maven 编译器构建插件,您将看到所有 javac 错误!来源有更多细节 https://issues.apache.org/jira/browse/MCOMPILER-346

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 9 的 Maven 编译问题 的相关文章

随机推荐

  • “在视图更新期间修改状态,这将导致未定义的行为。”在文本字段(SwiftUI)上输入时出错

    我有两个文本字段 分配给 State private var emailAddress String State private var password String 现在 每当我在上面输入内容时 该应用程序似乎都会卡住并给出以下错误 在
  • 拖动时获取触摸位置

    我有一些我喜欢拖来拖去的观点 意见范围内 LinearLayout 它本身位于滚动视图内 我想获取当前手指 触摸 的位置 以 在我的滚动视图上平滑滚动 具体取决于 当前拖动的高度 长按后我开始拖动 查看内置监听器startDrag view
  • 使用Linux伪终端测试QSerialPort

    我想使用带有伪终端的 Qt 串行端口来测试应用程序 根据我实现的手册页 open master QSerialPort master dev ptmx master open QSerialPort ReadWrite int master
  • R散点图:符号颜色代表重叠点的数量

    当许多点重叠时 散点图可能很难解释 因为这种重叠会掩盖特定区域中数据的密度 一种解决方案是对绘制点使用半透明颜色 以便不透明区域表明这些坐标中存在许多观测值 下面是我在 R 中的黑白解决方案的示例 MyGray lt rgb t col2r
  • 将类名与变量 Angular 2 连接起来

    我想要类似的东西class myClass classVar 我试图将类名与范围内的变量值连接起来 但不起作用 div span span div Add a 和一个空格 div span span div
  • !!(x) 在 C(尤其是 Linux 内核)中意味着什么?

    我一直在阅读 Linux 内核 具体来说 2 6 11 我遇到了以下定义 define unlikely x builtin expect x 0 来自 linux 2 6 11 include linux compiler h 61lxr
  • 对于自定义容器类的成员,List.Sort() 与 List.OrderBy() 的实用程序

    我发现自己回顾了一些旧的 3 5 框架遗留代码 并发现了一些点 其中有一大堆列表和字典必须以同步方式更新 我已经确定 通过将这些融合到新的自定义类的自定义容器类中 我可以使这个过程变得更加易于使用和理解 然而 在某些方面 我开始担心通过特定
  • 使用 jquery + jsonp,Internet Explorer 不保存 ASP.NET sessionID

    所以我正在使用 Jquery 做一些相当简单的 JSONP 东西 总体结构 网站存在于域中A JavaScript 存在于域中B JSON 服务也存在于域中B 该站点调用 jsonp 调用 json 服务 net 的方法 在 net 中我设
  • Jetty Servlet 不运行——而是获取目录列表

    我正在尝试让在 Netbeans 中构建并运行的 servlet 在 jetty 服务器上运行 本地部署始终有效 但是在 Jetty 上部署会导致目录列表 而不是实际运行的 servlet 问题似乎出在上下文配置上 但我不知道我做错了什么
  • Jax-RS 未使用 @provider 注释注册资源

    我有一个使用 jersey api 在 weblogic 12c 中运行的休息应用程序 我有一个带有注释 provider 的http 请求过滤器类 但是 在部署应用程序时 过滤器类未向我在 ApplicationConfig 类中添加的其
  • 具有 Owin 身份验证的 Mono

    我有一个在 Mono 中运行的 Owin 应用程序 我正在尝试让身份验证在其上正常工作 我使用了以下信息这一页 https coding abel nu 2014 06 writing an owin authentication midd
  • 如何使用for循环matlab调用顺序变量? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我有一堆变量叫做length act
  • -O0、-O1 和 -g 有什么区别

    我想知道如何使用 O0 O1 和 g 在库中启用调试符号 有些建议使用 O0 来启用调试符号 有些建议使用 g 那么 g 和 O0 之间的实际区别是什么 01 和 O0 之间的区别是什么 哪个最好使用 O0是优化级别 0 无优化 与省略 O
  • 无法从“pyproj”导入名称“CRS”以使用 osmnx 库

    I have used a fresh anaconda install to download and install all the required modules for osnmx library but I got the fo
  • 我们什么时候使用ANTLR

    谁能指导我在 ASP Net C 项目中使用 ANTLR dll 的目的 我刚刚注意到antlr 运行时 Antlr3 运行时 Antlr3 实用程序某些项目中引用的程序集 如果能引用一些现实世界的例子或者任何指向网页的链接都会有用 那就太
  • 如何在文本区域更改时将“必需”属性添加到输入?

    我需要在文本区域 orderComments 中输入文本的情况下将 required 属性添加到 html select toDept 中 下面是我的代码 我缺少什么 我需要在更改事件或其他事件上运行 jquery 吗 document r
  • EJB企业应用程序不需要EJB接口

    我创建了一个 Java EE 应用程序并向 EJB 项目添加了一个无状态会话 bean EJB 项目是 web WAR 项目中的依赖项 我将在 EJB 项目中创建的 EJB 注入到我的一个 servlet 中 这工作正常 我能够在 Web
  • 我可以获取字符串形式的 saml-token 吗?

    我正在使用 spring security saml2 1 0 0 RELEASE 它运作良好 对我来说非常好 但新的要求提出了 我需要 saml token 作为字符串 我可以将 saml token 作为字符串获取吗 我在日志中找到 s
  • 在 Android Studio 2.3 上创建项目时出错

    我已将 Android Studio 从 2 2 升级到 2 3 当我创建带有导航活动的新 Android 项目时 出现两个错误 Error java util concurrent ExecutionException java lang
  • Java 9 的 Maven 编译问题

    尝试使用 JDK 9 0 1 编译 Maven 项目时 我遇到了这个堆栈跟踪 但没有太多解释 Exception in thread main java lang AssertionError at jdk compiler com sun