带有 JDK10 SDK 的 IntelliJ 无法编译具有 1.8 目标的 maven 项目

请考虑 maven 项目中的以下代码:

import org.w3c.dom.css.CSSStyleDeclaration;

public class Test {
    public static void main(String[] args) {
        CSSStyleDeclaration styleDeclaration = null;
    }
}

其中包含插件pom.xmlmaven-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>--add-modules ...javacoption --add-modules not allowed with target 1.8

是否有任何解决方法允许我使用 IntelliJ 和 JDK10 SDK 以及源和目标编译此代码?1.8


IntelliJ: 2018.2
Java: Java HotSpot(TM) 64 位 Server VM 18.3 (build 10.0.1+10, 混合模式)


答案 1

禁用“使用选项进行交叉编译”:--release

--release

有关更多详细信息以及有关此选项的另一个答案,请参阅此问题


答案 2

推荐