带有 JDK10 SDK 的 IntelliJ 不编译带有 1.8 目标的 Maven 项目
IntelliJ with JDK10 SDK doesn't compile maven project with 1.8 target
考虑 Maven 项目中的以下代码:
import org.w3c.dom.css.CSSStyleDeclaration;
public class Test {
public static void main(String[] args) {
CSSStyleDeclaration styleDeclaration = null;
}
}
其中 pom.xml
包含 maven-compiler-plugin
插件
<?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>
这个项目可以使用maven编译没有错误。但是,当使用 JDK10 SDK 从 IntelliJ 编译时,会出现 Error:(1, 27) java: package org.w3c.dom.css does not exist
错误。如果源更改为 <source>10</source>
,则错误消失。我预计问题可能与 jigsaw 有关,但我无法使用 --add-modules ...
,因为 javac
会因 option --add-modules not allowed with target 1.8
.
而出错
是否有任何变通方法可以让我使用带有 JDK10 SDK 的 IntelliJ 和 1.8
源和目标来编译此代码?
IntelliJ:2018.2
Java:Java HotSpot(TM) 64 位服务器 VM 18.3(内部版本 10.0.1+10,混合模式)
禁用 "Use --release
option for cross-compilation":
参见this issue for more details and 。
考虑 Maven 项目中的以下代码:
import org.w3c.dom.css.CSSStyleDeclaration;
public class Test {
public static void main(String[] args) {
CSSStyleDeclaration styleDeclaration = null;
}
}
其中 pom.xml
包含 maven-compiler-plugin
插件
<?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>
这个项目可以使用maven编译没有错误。但是,当使用 JDK10 SDK 从 IntelliJ 编译时,会出现 Error:(1, 27) java: package org.w3c.dom.css does not exist
错误。如果源更改为 <source>10</source>
,则错误消失。我预计问题可能与 jigsaw 有关,但我无法使用 --add-modules ...
,因为 javac
会因 option --add-modules not allowed with target 1.8
.
是否有任何变通方法可以让我使用带有 JDK10 SDK 的 IntelliJ 和 1.8
源和目标来编译此代码?
IntelliJ:2018.2
Java:Java HotSpot(TM) 64 位服务器 VM 18.3(内部版本 10.0.1+10,混合模式)
禁用 "Use --release
option for cross-compilation":
参见this issue for more details and