在 IntelliJ 中的 Java 早期访问版本中启用“预览”功能

Bas*_*que 16 java intellij-idea preview-feature

不幸的是,即使是 IntelliJ 的最新早期访问版本通常也不支持 Java 的早期访问版本。

\n

例如,我尝试将Intellij 2022.1.1 Preview (Ultimate Edition)与基于早期访问Java 19Project Loom实验版本一起使用。安装 JDK 通常适用于 IntelliJ。

\n

但现在我想使用 Loom 特定的功能。当我调用这个实验性 Java 19 中的新方法时,我从编译器中收到以下错误:

\n
\n

java: newVirtualThreadPerTaskExecutor() 是预览 API,默认情况下处于禁用状态。

\n

(使用 --enable-preview 启用预览 API)

\n
\n

我的第一个想法是在文件 > 项目结构 > 项目设置 > 项目\xe2\x80\xa6 模块面板上设置语言级别字段。但显然 IntelliJ 没有为这个早期访问 Java 19 的(预览)模式提供任何菜单项。

\n

有没有办法让 IntelliJ 使用新的预览 API?

\n

我知道错误消息的建议--enable-preview是在某处应用的标志。但我不知道在哪里。

\n

Bor*_*lov 18

我必须一步一步做的事情。

将IDE更新到最新版本

用 loom 下载 JVM

将 loom JDK 添加到 IDE

将其设置为项目和构建工具

将启用预览和源设置为 19 作为编译器选项来执行此操作,转到 prefs -> 编译器 -> java 编译器,取消选中 --release 选项并为特定项目全局添加以下编译器参数

--enable-preview --source 19
Run Code Online (Sandbox Code Playgroud)

这些在编译时直接传递给 javac

在运行配置上设置启用预览并添加--enable-preview为 JVM 选项(如果没有看到它,请单击“修改选项”)

你应该很高兴去,我遇到了一个错误,有时 Gradle 抱怨它与我的 JVM 不兼容,为了解决这个问题,我必须将 Gradle VM 切换到 java 17,等待它构建,然后返回到 19

编辑:

Maven 是试验非 LTS 版本的更好选择。使用maven我遇到了零问题,Gradle到处都有一些奇怪的ifs,如果它们“不支持”某些Java-Gradle版本组合,即使它们在下面使用maven,它们也会抛出错误

  • 这对我使用 IntelliJ IDEA 社区版 2022.1.3 版本有效。对我来说最棘手的部分是弄清楚在设置中放置这些编译器选项的位置。这是我开始工作时的设置:https://imgur.com/a/D0Hqq8e 我的运行配置:https://imgur.com/a/6YTCkm5 这意味着我可以编写使用虚拟线程的代码: https://imgur.com/a/GwxYrZF (4认同)

exa*_*cae 9

我在 InteliJ IDEA Ultimate 2022.2.3 中使用 Java 19.0.1 EAP 进行巴拿马项目时遇到了同样的问题:

java: java.lang.foreign.Linker 是预览 API,默认情况下处于禁用状态。(使用 --enable-preview 启用预览 API)

没有任何 UI 技巧,将--enable preview参数传递给 Maven 编译器插件对我来说很有效:

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>19</source>
          <target>19</target>
          <compilerArgs>
            <arg>--enable-preview</arg>
          </compilerArgs>
        </configuration>
      </plugin>
    </plugins>
  </build>
Run Code Online (Sandbox Code Playgroud)


oze*_*ray 5

以下是 IDEA IntelliJ 中 --enable-preview 设置的快照:

在此输入图像描述

然后,您还需要为您运行的每个程序启用预览功能。在“编辑配置”窗口中,单击“修改选项”>“AD VM 选项”,然后在其中设置标志:

在此输入图像描述

现在您应该能够在启用预览功能的情况下运行您的程序。