当使用IntelliJ IDEA运行JUnit测试时,我得到

我该如何纠正呢?

使用SDK 1.7 模块语言级别为1.7

Maven构建工作正常。(这就是为什么我在IDEA配置问题上相信这一点)


当前回答

如果Maven构建工作正常,请尝试同步Maven和IntelliJ IDEA项目的结构。

在Maven工具窗口中,单击刷新按钮。按下这个按钮,IntelliJ IDEA将在Maven工具窗口中解析项目结构。

注意,如果您正在使用EAP构建,这可能没有帮助,因为Maven同步特性有时可能会被破坏。

其他回答

修改下面路径下项目的编译器设置文件,将'target'改为1.7:

/项目/ .idea / compiler.xml

<bytecodeTargetLevel>
  <module name="project-name" target="1.7" />
</bytecodeTargetLevel>

从这一刻到另一刻,我也得到了这个错误,没有明确的原因。我改变了编译器/模块等的各种设置。但最后,我只是通过重新导入Maven项目重新创建了IntelliJ项目,问题就解决了。我觉得这是个漏洞。

12 129.961

我找到了另一种遇到这种错误的方法。如果您一直在重新组织目录结构,并且其中一个poms指向不再配置javac的旧父目录(因为该配置已移动到中间层),就会出现这种情况。如果发生这种情况,顶层默认为1.5,行为不端的底层pom继承它。

因此,当您看到这个错误时,要检查的另一件事是您的pom结构是否与目录结构正确匹配。

IntelliJ 15, 2016 & 2017

类似于下面讨论的IntelliJ 13和14,但在设置/首选项面板中有一个额外的级别:设置>构建,执行,部署>编译> Java编译器。

IntelliJ 13和14

在IntelliJ 13和14中,检查Settings > Compiler > Java Compiler UI,以确保在模块中没有针对不同的字节码版本。

您需要在构建配置中更改Java编译器版本。