3

这是我的 pom.xml:

...
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>13</source>
                <target>13</target>
                <release>13</release>
                <compilerArgs>
                    --enable-preview
                </compilerArgs>
            </configuration>
        </plugin>
...
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.2</version>
            <configuration>
                <reuseForks>false</reuseForks>
                <argLine>--enable-preview</argLine>
            </configuration>
        </plugin>

问题是构建正常,但是当测试启动时,我得到:

[错误] 无法在项目 foo-project 上执行目标 org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M4:test (default-test):执行目标 org.apache.maven 的默认测试.plugins:maven-surefire-plugin:3.0.0-M4:test failed:java.lang.UnsupportedClassVersionError: Preview features are not enabled for it/project/MyTest(类文件版本 57.65535)。尝试使用 '--enable-preview' -> [帮助 1] 运行

我必须在 pom.xml 中插入什么来执行启用预览模式的测试?

谢谢。

4

1 回答 1

0

我有一个类似的问题。

  • Maven 版本:3.8.1
  • Surefire 版本:2.22.2
  • JK: 13

我用过<reuseForks>true</reuseForks>,效果很好。

       <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>${maven.compiler.plugin.version}</version>
            <configuration>
                <release>${java.version}</release>
                <showWarnings>true</showWarnings>
                <compilerArgs>
                    <compilerArg>-Xlint:unchecked,deprecation</compilerArg>
                    <compilerArg>--enable-preview</compilerArg>
                </compilerArgs>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>${surefire.plugin.version}</version>
            <configuration>
                <includes>
                    <include>**/*Test.java</include>
                </includes>
                <reuseForks>true</reuseForks>
                <argLine>--enable-preview</argLine>
            </configuration>
        </plugin>
于 2021-10-28T13:01:40.370 回答