使用IntelliJ IDE不能编译任何项目。设置截图如下:

使用JDK:

项目SDK及语言级别:

语言水平:

有人有什么想法吗?


这看起来就像没有正确配置编译器插件时Maven生成的那种错误。下面是一个Java 8编译器配置的例子。

<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<!-- ... -->

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

<!-- ... -->

</project>

去文件>设置>构建,执行,部署>编译器> Java编译器如果在Mac上,它在Intellij IDEA >首选项…>构建,执行,部署> Java编译器 将您正在工作的模块的目标字节码版本更改为1.8。

如果您正在使用Maven

将编译器插件添加到顶级项目节点下的pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

(摘自评论。)

注意:如果您不介意重新导入项目,那么您真正需要做的唯一一件事就是更改pom并重新导入项目,然后IntelliJ将获得正确的设置,您不必手动更改它们。


你需要进入设置,在Java编译器下设置如下:

同时检查项目设置


解决这个问题有两种方法:

设置(文件->设置->构建,执行,部署-> Java编译器): 在pom.xml中添加一个构建部分:


我找到的最快的方法是:

按:CTRL + SHIFT + A (Mac⌘+ SHIFT + A) 类型:Java编译器 新闻:输入

在“设置”窗口中,将Target字节码设置为1.8

(对于java9来说是9)


我通过去项目结构->模块修复了这个问题,找到有问题的模块,单击依赖项选项卡,将模块SDK更改为项目SDK。


我通过修改我的POM文件来修复它。注意票数最高的答案下面的最后一条评论。

<plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <encoding>UTF-8</encoding>
        </configuration>
</plugin>

源必须与目标匹配。


在我的情况下,我通过打开项目的。iml文件(它位于项目根文件夹,名称与项目名称相同),并将line <orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />更改为<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />来修复这个问题

我在其他答案中配置了所有内容,但由于某种原因,Idea错误地更新了.iml文件。


我只是通过将目标编译版本更改为1.8来解决这个问题。其:

文件>>设置>>构建、执行、部署>>编译>> Java编译器


很多关于Maven的答案都是正确的,但是你不需要直接配置插件。

就像在Apache Maven编译器插件的wiki页面上描述的那样,你可以设置插件使用的2个属性。

<project>
  [...]
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  [...]
</project>

对我来说,问题在于Maven无法找到适当的配置,因为这些项是在父pom中指定的。

更改文件->设置->构建,执行,部署-> Maven ->用户设置文件指向我的自定义设置,使用适当的存储库修复了隐藏的问题。

通过Help ->在浏览器中显示日志->单击日志文件发现了问题,当以前只得到标题中的错误和“java.lang. lang. log .”NullPointerException”。


在compiler.xml文件下,你会发现:

<bytecodeTargetLevel>
  <module name="your_project_name_main" target="1.8" />
  <module name="your_project_name_test" target="1.8" />
</bytecodeTargetLevel>

你可以把目标值从旧的改为新的对我来说,我需要把它从1.5改为1.8


解决这个问题很简单。你必须在İdea项目上打开。İdea /compiler.xml文件

您应该编写合适的目标版本


对于Intellij,使用Maven,您必须检查Intellij是否自动导入了您的项目。 您可以单击编辑器右侧的Maven选项卡进行检查。

如果您的Project不在这里,那么单击+添加pom.xml文件。

显然,项目还必须有相关的<build/>:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>

如果您正在使用Android-studio 1.3,请遵循以下步骤-

进入文件-项目结构

在“模块-应用程序-属性”选项卡下,选择 源代码兼容性-1.8和

目标兼容性- 1.8。

这样就可以开始了。


您需要转到/.idea/compiler.xml并将目标更改为所需的jdk级别。


如果其他答案都无效,请检查模块SDK。

在我将项目SDK更新到1.8、Javac编译器更新到1.8等之后,这个错误就跳出来了。对我来说,问题的设置是“模块SDK”。

(在Linux上)进入文件>项目结构…然后在打开的窗口中,选择项目设置下的模块。从列表中选择有问题的模块,然后选择Dependencies选项卡,确保模块SDK设置正确。


我已经检查了以上所有的,但错误仍然发生。

但重新导入所有maven项目(maven项目面板内的重新加载按钮)在我的情况下是有效的。


我刚刚也被同样的问题困扰了一段时间。 唯一对我有用的是没有使用内置的mvn(3.3.9),而是将其指向外部下载的版本(3.5.0)。最后项目开始了,一切都很顺利。


不要忘记为你的模块设置依赖项:


我只是重新导入maven按钮,然后错误消失了。


在你的Gradle应用级别文件>> compileOptions中添加这两行

android {
  compileOptions {
    ...
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
    ...
   }
}

如果您的模块配置了注释处理器,而其他模块没有配置,则会发生此问题。为所有模块设置相同的配置,因为它是循环依赖的。


下面的代码在我身边工作得很好。我只是把它添加到pom.xml文件中。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

唯一帮助我的是删除。idea/compiler.xml文件。