Considere el siguiente código en un proyecto maven:
import org.w3c.dom.css.CSSStyleDeclaration;
public class Test {
public static void main(String[] args) {
CSSStyleDeclaration styleDeclaration = null;
}
}
Cuando pom.xml
contiene maven-compiler-plugin
plug-in
<?xml version="1.0" encoding="UTF-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">
<modelVersion>4.0.0</modelVersion>
<groupId>me.serce.jdk10mvntest</groupId>
<artifactId>jdk10mvntest</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
Este proyecto puede ser compilado usando Maven sin errores. Sin embargo, cuando se compila a partir de IntelliJ con JDK10 SDK, da Error:(1, 27) java: package org.w3c.dom.css does not exist
error. Si se cambia la fuente a <source>10</source>
que desaparezca el error. Espero que el problema podría estar relacionado con los rompecabezas , pero no puedo utilizar --add-modules ...
PORQUE javac
errores con option --add-modules not allowed with target 1.8
.
¿Hay alguna solución que me permita compilar este código usando IntelliJ con JDK10 SDK y 1.8
origen y el destino?
IntelliJ: 2018.2
Java: (modo mixto acumulación 10.0.1 + 10,) Java HotSpot (TM) de 64 bits del servidor VM 18,3
Desactivar la opción "Usar --release
la opción de compilación cruzada":
Ver este tema para más detalles y mi respuesta otra acerca de esta opción .