IDEA: javac: source release 1.7 requires target release 1.7

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

我怎样才能纠正这个问题?

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

Maven构建工作正常。(这就是为什么我认为这是IDEA的配置问题)。)

解决办法

很可能你从Maven导入的编译器选项不正确。

还要检查截图上列出的项目和模块字节码(目标)版本设置。

其他配置语言水平的地方。

  • 项目结构 | 项目

![项目][2]

  • 项目结构 | 模块(检查每个模块) | 资源

Maven的默认语言级别是1.5**(5.0),你会在上面的截图中看到这个版本作为模块语言级别。

这可以通过pom.xml内的maven-compiler-plugin配置来改变。


  [...]

    [...]


        org.apache.maven.plugins
        maven-compiler-plugin

          1.8
          1.8



    [...]

  [...]


  [...]

    1.8
    1.8

  [...]

Maven Projects工具窗口中重新导入的Maven项目后,IntelliJ IDEA将尊重这一设置。

![reimport][4]

评论(12)

我遇到了这个问题,解决方法是进入项目设置>模块>点击特定模块>依赖标签。我注意到模块SDK仍然设置在1.6上,我把它改为1.7,就成功了。

评论(1)

我已经在settings > compiler > java compiler中找到了所需的选项('目标字节码版本'),在我的情况下(intelij idea 12.1.3)。

评论(0)