IntelliJ 2018.1首选项中的“使用’ – release’选项”是什么?

在IntelliJ 2018.1(构建,执行,部署>编译器> Java编译器)的首选项中,有一个标记为的复选框:

使用’–release’选项进行交叉编译(Java 9及更高版本)

我在网上搜索时找到了相关信息。 “?” 单击帮助图标时出现404错误。

这个选项的目的/function是什么?

在此处输入图像描述

帮助部分可以在这里找到 :

默认情况下,选择此选项。 IntelliJ IDEA在需要交叉编译时从项目设置中推导出来,并自动应用Java 9的–release编译器选项。

什么是--release选项? 它是一个新的命令行选项,在JEP 247:为旧版平台版本编译中定义。

定义了一个新的命令行选项--release ,它自动配置编译器以生成将链接到给定平台版本的实现的类文件。

在这里讨论这个好的答案 。

另请检查IDEA-184333 ,了解在IDE中添加此选项的背景。 简而言之,一些用户只需为其项目指定-source-target版本,而无需设置-bootclasspath选项。