如何在 Eclipse 中使用 Java 17 的 ANT 预览功能进行构建

How to build using ANT preview features of Java 17 in Eclipse

<target name="compile" depends="init" description="Compile the source.">
    <javac srcdir="${src}" classpathref="classpath" destdir="${build.bin}" compiler="modern" debug="true" debuglevel="lines,vars,source" includeantruntime="false" source="17" target="17" />
</target>

Eclipse 无法构建,因为我的开关包含预览代码。如何启用预览并允许使用 ANT 进行编译 (build.xml)?

error: patterns in switch statements are a preview feature and are disabled by default.

您可以使用 Ant <compilerarg> 元素,它可以嵌套在 <javac> 元素中。

具体来说,您需要 javac --enable-preview 参数。

示例:

<target name="compile" depends="init" description="Compile the source.">
    <javac srcdir="${src}" classpathref="classpath" destdir="${build.bin}" compiler="modern" debug="true" debuglevel="lines,vars,source" includeantruntime="false" source="17" target="17">
        <compilerarg value="--enable-preview" />
    </javac>
</target>

有关 compilerarg 的更多信息和示例可在此处找到:Ant: passing compilerarg into javac