当前位置: 首页 > 知识库问答 >
问题:

在surefire和failsafe中运行启用预览功能的测试时出现问题

伯洋
2023-03-14
        <plugin>                                                            
            <artifactId>maven-compiler-plugin</artifactId>                  
            <version>3.8.0</version>                                        
            <configuration>                                                 
                <release>12</release>                          
                <compilerArgs>                                                                                  
                    <arg>--enable-preview</arg>                             
                </compilerArgs>                                                                      
            </configuration>                                                
        </plugin>                                                                                                                                         

并在argLine中添加了它,以确保Fire和FailSafe:

<properties>                                                                                             
    <argLine>--enable-preview</argLine>                        
</properties> 

并对MVN clean验证结果:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M3:test (default-test) on project lombok-jdk10: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M3:test failed: java.lang.UnsupportedClassVersionError: Preview features are not enabled for com/kirela/lombok/BarTest (class file version 56.65535). Try running with '--enable-preview' -> [Help 1]

我还尝试将argLine直接添加到SureFire/FailSafe配置中,但结果是一样的。

        <plugin>                                                            
            <groupId>org.apache.maven.plugins</groupId>                     
            <artifactId>maven-surefire-plugin</artifactId>                  
            <version>3.0.0-M3</version>                                     
            <configuration>                                                 
                <forkCount>2</forkCount>                                    
            </configuration>                                                
        </plugin>                                                           
        <plugin>                                                            
            <groupId>org.apache.maven.plugins</groupId>                     
            <artifactId>maven-failsafe-plugin</artifactId>                  
            <version>3.0.0-M3</version>                                     
            <executions>                                                    
                <execution>                                                 
                    <goals>                                                 
                        <goal>integration-test</goal>                       
                        <goal>verify</goal>                                 
                    </goals>                                                
                </execution>                                                
            </executions>                                                   
            <configuration>                                                 
                <forkCount>2</forkCount>                                    
            </configuration>                                                                                                                              
        </plugin> 

Edit3:最小的工作示例如下:https://github.com/krzyk/lombok-jdk10-example

项目在--enable-preview时失败,但在删除它时工作。

共有1个答案

毕浩渺
2023-03-14

这对我很有效:

  • MVN clean install(与junit测试一起使用)
  • IDEA正确识别模块语言级别为12(预览)-开关表达式
  • IDEA工作中的JUnit测试
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
        <configuration>
            <release>12</release>
            <compilerArgs>
                <arg>--enable-preview</arg>
            </compilerArgs>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.22.2</version>
        <configuration>
            <argLine>--enable-preview</argLine>
        </configuration>
    </plugin>

环境:

想法2019.2.1

Maven 3.6.0

JDK:

 IMPLEMENTOR="Oracle Corporation"
 JAVA_VERSION="12"
 JAVA_VERSION_DATE="2019-03-19"
 类似资料:
  • 问题内容: 我正在尝试使用将项目迁移到Java 12 。 我在编译器设置中添加了: 并在argLine中添加了它,以确保surefire和failsafe: 并得出以下结果: 我也尝试将argLine直接添加到surefire / failsafe配置中,但是结果是相同的。 我在这里想念什么? 我这是surefire / failsafe中的错误吗? EDIT2:Surefire和故障安全配置:

  • 我尝试用OpenJDK11在Jenkins中构建工件。首先,我运行了 但是,当我运行时,测试类出现了以下错误。 波姆。xml 请帮助我在詹金斯解决这个问题 注:我在当地也遇到了类似的问题。我在~/换了家。mavenrc文件

  • 我正在试验如何与maven surefire和testng并行运行测试。然而,配置似乎不是很简单,我无法让它工作。下面是我的虚拟测试。 这是我的surefire配置: 测试基本上是按顺序运行的。以下是日志作为证据: 我的意图是并行运行所有测试(直到方法级别)。那么,我该如何实现呢?

  • 我试图用codeception运行一些测试,当我尝试测试表单时,总是失败,我不知道为什么。和其他人一样,他们都通过了。测试代码如下: 当我用命令运行测试时/vendor/bin/run-vvv--html--debug我有以下日志: 接受。一套yml就是这个: 演员:验收员 模块: 什么是错的?我想要的是测试表格,看看下一页写的假期,为什么一些测试通过了,一个简单的表格没有?。你能帮我个忙吗?

  • 在JDK/12 EarlyAccess Build10中,JEP-325开关表达式已经作为预览特性集成在JDK中。表达式的示例代码(在JEP中也是如此): 其中作为枚举

  • 我尝试使用Grails 1.3.7、Geb、Spock和Selenium运行功能测试。下面是我的buildconfig.groovy文件: 测试代码如下所示: