O uso do IntelliJ IDE não pode compilar nenhum projeto. Capturas de tela das configurações abaixo:
JDK usado:
SDK do projeto e nível de idioma:
Nível de idioma:
Alguém tem alguma ideia?
O uso do IntelliJ IDE não pode compilar nenhum projeto. Capturas de tela das configurações abaixo:
JDK usado:
SDK do projeto e nível de idioma:
Nível de idioma:
Alguém tem alguma ideia?
Respostas:
Se você estiver usando o Maven
Adicione o plug-in do compilador ao nó de pom.xml
nível superior project
:
<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>
(Elevado dos comentários.)
Nota: Se você não se importa em reimportar seu projeto, a única coisa que você realmente precisa fazer é alterar o pom e reimportar o projeto. O IntelliJ selecionará as configurações corretas e você não precisará alterá-las manualmente.
Project Structure -> Project Settings -> Modules -> Denpendencies -> Module SDK
.
Parece o tipo de erro que o Maven gera quando o plug-in do compilador não está configurado corretamente. Aqui está um exemplo de uma configuração do compilador 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>
project
, build
e depois plugins
.
<source>1.8</source>
e <target>1.8</target>
estiver configurado, o erro acima pode ocorrer.
java compiler
Na janela Configurações, defina o bytecode de destino como 1,8
(ou 9 para java9)
Existem duas maneiras de resolver esse problema:
Muitas respostas sobre o Maven estão corretas, mas você não precisa configurar o plugin diretamente.
Como descrito na página wiki do Apache Maven Compiler Plugin, você pode definir as 2 propriedades usadas pelo plug-in.
<project>
[...]
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
[...]
</project>
org.apache.maven.plugins:maven-compiler-plugin
no seu arquivo pom ou gradle, o que na documentação pretendia dizer é que ter essa propriedade definida nas propriedades pom será suficiente, basicamente porque eles definem os valores padrão do plug-in, por exemplo, <source> $ { maven.compiler.source} </source>
Corrigi isso indo para Estrutura do projeto -> Módulos , localize o módulo em questão, clique na guia Dependências e mude Module SDK
para Project SDK
.
Corrigi-o apenas alterando a versão de compilação do destino para 1,8. Está dentro:
Arquivo >> Configurações >> Compilação, Execução, Implantação >> Compilador >> Compilador Java
No meu caso, corrigi esse problema abrindo o arquivo .iml do projeto (ele está localizado na pasta raiz do projeto e tem o mesmo nome do projeto) e alterando a linha<orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />
para<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
Eu tinha tudo configurado como nas outras respostas aqui, mas por alguma razão o Idea atualizou o arquivo .iml incorretamente.
Corrigi-o modificando meu arquivo POM. Observe o último comentário com a resposta mais votada.
<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>
A fonte deve corresponder ao destino.
No arquivo no nível do aplicativo Gradle >> compileOptions, adicione estas duas linhas
android {
compileOptions {
...
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
...
}
}
No arquivo compiler.xml, você encontrará:
<bytecodeTargetLevel>
<module name="your_project_name_main" target="1.8" />
<module name="your_project_name_test" target="1.8" />
</bytecodeTargetLevel>
e você pode alterar o valor alvo do seu antigo para o novo para mim, eu precisava alterá-lo de 1,5 para 1,8
Para mim, o problema era que o Maven não conseguia encontrar as configurações adequadas, pois esses itens foram especificados no pom pai.
Alterar arquivo -> configurações -> compilação, execução, implantação -> Maven -> arquivo de configurações do usuário para apontar para minhas configurações personalizadas com repositórios adequados corrigiu o problema que estava oculto.
Descobri o problema através da Ajuda -> Mostrar o log in explorer -> clicando no arquivo de log, quando anteriormente só havia o erro no título e "java.lang.NullPointerException" no console.
Com o Intellij , usando o Maven , você deve verificar se o Intellij importou automaticamente o seu projeto. Você pode verificar clicando na guia Maven à direita do seu Editor.
Se o seu projeto não estiver aqui, adicione o pom.xml
arquivo clicando em +
.
Obviamente, o projeto também deve ter o relevante <build/>
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
Se nenhuma das outras respostas funcionar, verifique o SDK do módulo .
Ocorreu um erro para mim depois de atualizar o SDK do projeto para 1,8, o compilador Javac para 1,8 etc. A configuração que foi o problema para mim foi o "SDK do módulo".
(no Linux) Vá para File > Project Structure...
na janela que se abre, selecione Modules
em Project Settings
. Selecione o módulo em questão na lista e, em seguida, na Dependencies
guia e verifique se Module SDK
está definido adequadamente.