Usar IntelliJ IDE no puede compilar ningún proyecto. Capturas de pantalla de la configuración a continuación:
JDK usado:
Proyecto SDK y nivel de idioma:
Nivel de idioma:
¿Alguien tiene ideas?
Usar IntelliJ IDE no puede compilar ningún proyecto. Capturas de pantalla de la configuración a continuación:
JDK usado:
Proyecto SDK y nivel de idioma:
Nivel de idioma:
¿Alguien tiene ideas?
Respuestas:
Si estás usando Maven
Agregue el complemento del compilador pom.xml
debajo del project
nodo de nivel superior :
<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>
(Levantado de los comentarios).
Nota: Si no le importa volver a importar su proyecto, lo único que realmente necesita hacer es cambiar el pom y volver a importar el proyecto, entonces IntelliJ seleccionará la configuración correcta y no tiene que cambiarla manualmente.
Project Structure -> Project Settings -> Modules -> Denpendencies -> Module SDK
.
Este parece el tipo de error que genera Maven cuando no tiene el complemento del compilador configurado correctamente. Aquí hay un ejemplo de una configuración del 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
y luego plugins
.
<source>1.8</source>
y <target>1.8</target>
está configurado, puede producirse el error anterior.
java compiler
En la ventana Configuración, establezca el Bytecode de destino en 1.8
(o 9 para java9)
Hay dos formas de resolver este problema:
Muchas respuestas con respecto a Maven son correctas, pero no tiene que configurar el complemento directamente.
Como se describe en la página wiki del Complemento Apache Maven Compiler, solo puede establecer las 2 propiedades utilizadas por el complemento.
<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
en su archivo pom o gradle, lo que en la documentación pretende decir es que tener esa propiedad establecida en las propiedades pom será suficiente, básicamente porque establecen los valores predeterminados del complemento, por ejemplo, <source> $ { maven.compiler.source} </source>
Lo arreglé yendo a Estructura del proyecto -> Módulos , encuentre el módulo en cuestión, haga clic en la pestaña Dependencias , cambie Module SDK
a Project SDK
.
Lo arreglé simplemente cambiando la versión de compilación de destino a 1.8. Está dentro:
Archivo >> Configuración >> Compilación, Ejecución, Implementación >> Compilador >> Compilador Java
En mi caso, solucioné este problema abriendo el archivo .iml del proyecto (se encuentra en la carpeta raíz del proyecto y tiene el mismo nombre que el proyecto) y cambié la línea <orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />
a<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
Tenía todo configurado como en otras respuestas aquí, pero por alguna razón Idea actualizó el archivo .iml incorrectamente.
Lo arreglé modificando mi archivo POM. Observe el último comentario debajo de la respuesta más 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>
La fuente debe coincidir con el objetivo.
En su archivo de nivel de aplicación Gradle >> compileOptions agregue estas dos líneas
android {
compileOptions {
...
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
...
}
}
En el archivo compiler.xml encontrarás:
<bytecodeTargetLevel>
<module name="your_project_name_main" target="1.8" />
<module name="your_project_name_test" target="1.8" />
</bytecodeTargetLevel>
y puedes cambiar el valor objetivo de tu antiguo al nuevo para mí, necesitaba cambiarlo de 1.5 a 1.8
Para mí, el problema era que Maven no pudo encontrar las configuraciones adecuadas, ya que estos elementos se especificaron en el pom padre.
El cambio de archivo -> Configuración -> Compilación, ejecución, implementación -> Maven -> Archivo de configuración de usuario para apuntar a mi configuración personalizada con repositorios adecuados solucionó el problema que de otro modo se estaba ocultando.
Descubrí el problema a través de Ayuda -> Mostrar explorador de inicio de sesión -> haciendo clic en el archivo de registro, cuando anteriormente solo aparecía el error en el título y "java.lang.NullPointerException" en la consola.
Con Intellij , utilizando Maven , debe verificar que Intellij haya importado automáticamente su proyecto. Puede verificar haciendo clic en la pestaña Maven a la derecha de su Editor.
Si su proyecto no está aquí, agregue el pom.xml
archivo haciendo clic en +
.
Obviamente, el proyecto también debe tener lo 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>
Si ninguna de las otras respuestas funciona, verifique su Módulo SDK .
Me apareció este error después de haber actualizado el SDK del proyecto a 1.8, el compilador Javac a 1.8, etc. La configuración que fue mi problema fue el "Módulo SDK".
(en Linux) Vaya a y File > Project Structure...
luego en la ventana que se abre, seleccione Modules
debajo Project Settings
. Seleccione el módulo en cuestión de la lista y luego la Dependencies
pestaña y asegúrese de que Module SDK
esté configurado correctamente.