类型NotPresentExceptionProxy

2024-01-11

从 Surefire 2.6 升级到 Surefire 2.13 时,我得到TypeNotPresentExceptionProxy运行我的单元测试时。

java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
    at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:653)
    at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:460)
    at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
    at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
    at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
    at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
    at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
    at java.lang.Class.getAnnotation(Class.java:3029)
    at org.apache.maven.surefire.common.junit4.JUnit4TestChecker.isValidJUnit4Test(JUnit4TestChecker.java:64)

In JUnit4TestChecker,第 64 行如下所示:

Annotation runWithAnnotation = testClass.getAnnotation( runWith );

因此 Surefire 检查@RunWith注释以确保其类型有效。我们的测试使用Spring,所以@RunWith在我们的测试类中看起来像这样:

@RunWith(SpringJUnit4ClassRunner.class)

Surefire 似乎没有找到SpringJUnit4ClassRunner班级。我不知道为什么在 Surefire 2.6 下测试运行良好。

有任何想法吗?


运行 mvn dependency:resolve

排除可能潜入的任何 3.x 版本的 JUnit。

确保没有 TestNG 依赖项,如果有,它将加载 TestNG 注释,而不是您需要的 JUnit 注释。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

类型NotPresentExceptionProxy 的相关文章

  • Java 枚举与创建位掩码和检查权限的混淆

    我想将此 c 权限模块移植到 java 但是当我无法将数值保存在数据库中然后将其转换为枚举表示形式时 我很困惑如何执行此操作 在 C 中 我创建一个如下所示的枚举 public enum ArticlePermission CanRead
  • 如何循环遍历所有组合,例如48 选择 5 [重复]

    这个问题在这里已经有答案了 可能的重复 如何在java中从大小为n的集合中迭代生成k个元素子集 https stackoverflow com questions 4504974 how to iteratively generate k
  • 使用 LinkedList 实现下一个和上一个按钮

    这可能是一个愚蠢的问题 但我很难思考清楚 我编写了一个使用 LinkedList 来移动加载的 MIDI 乐器的方法 我想制作一个下一个和一个上一个按钮 以便每次单击该按钮时都会遍历 LinkedList 如果我硬编码itr next or
  • 如何使用assertEquals 和 Epsilon 在 JUnit 中断言两个双精度数?

    不推荐使用双打的assertEquals 我发现应该使用带有Epsilon的形式 这是因为双打不可能100 严格 但无论如何我需要比较两个双打 预期结果和实际结果 但我不知道该怎么做 目前我的测试如下 Test public void te
  • 如何在 Spring-JUnit 测试中设置 JNDI 查找?

    我正在使用 Maven 3 0 3 Spring 3 1 0 RELEASE 和 JUnit 4 8 1 如何在容器外部创建 JNDI 功能 在我的例子中是 JBoss 我认为 Spring 的 jndiTemplate 可以解决这个问题
  • 过滤两次 Lambda Java

    我有一个清单如下 1 2 3 4 5 6 7 和 预期结果必须是 1 2 3 4 5 6 7 我知道怎么做才能到7点 我的结果 1 2 3 4 5 6 我也想知道如何输入 7 我添加了i gt i objList size 1到我的过滤器
  • 在接口中使用默认方法是否违反接口隔离原则?

    我正在学习 SOLID 原则 ISP 指出 客户端不应被迫依赖于他们所使用的接口 不使用 在接口中使用默认方法是否违反了这个原则 我见过类似的问题 但我在这里发布了一个示例 以便更清楚地了解我的示例是否违反了 ISP 假设我有这个例子 pu
  • 检测并缩短字符串中的所有网址

    假设我有一条字符串消息 您应该将 file zip 上传到http google com extremelylonglink zip http google com extremelylonglink zip not https stack
  • 在 junit 测试中获取 javax.lang.model.element.Element 类

    我想测试我的实用程序类 ElementUtils 但我不知道如何将类作为元素获取 在 AnnotationProcessors 中 我使用以下代码获取元素 Set
  • Java ResultSet 如何检查是否有结果

    结果集 http java sun com j2se 1 4 2 docs api java sql ResultSet html没有 hasNext 方法 我想检查 resultSet 是否有任何值 这是正确的方法吗 if resultS
  • tomcat 中受密码保护的应用程序

    我正在使用 JSP Servlet 开发一个Web应用程序 并且我使用了Tomcat 7 0 33 as a web container 所以我的要求是tomcat中的每个应用程序都会password像受保护的manager applica
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • 为什么 Java 8 不允许非公共默认方法?

    让我们举个例子 public interface Testerface default public String example return Hello public class Tester implements Testerface
  • java for windows 中的文件图标叠加

    我正在尝试像 Tortoise SVN 或 Dropbox 一样在文件和文件夹上实现图标叠加 我在网上查了很多资料 但没有找到Java的解决方案 Can anyone help me with this 很抱歉确认您的担忧 但这无法在 Ja
  • 如何使用 jUnit 将测试用例添加到套件中?

    我有 2 个测试类 都扩展了TestCase 每个类都包含一堆针对我的程序运行的单独测试 如何将这两个类 以及它们拥有的所有测试 作为同一套件的一部分执行 我正在使用 jUnit 4 8 在 jUnit4 中你有这样的东西 RunWith
  • 非 Spring 托管类中 DI 的编译时编织

    我想为标记为的类配置编译时编织 Configurable注释能够将 spring 依赖项注入到初始化的类中new操作员 我不想使用加载时编织 因为我无权访问应用程序服务器的运行脚本 因此无法修改它 另外 我希望能够在测试中使用此类 我的意思
  • Opencv Java 灰度

    我编写了以下程序 尝试从彩色转换为灰度 Mat newImage Imgcodecs imread q1 jpg Mat image new Mat new Size newImage cols newImage rows CvType C
  • 在java中为组合框分配键

    我想添加一个JComboBox在 Swing 中这很简单 但我想为组合中的每个项目分配值 我有以下代码 JComboBox jc1 new JComboBox jc1 addItem a jc1 addItem b jc1 addItem
  • 使用 CXF-RS 组件时,为什么我们使用 而不是普通的

    作为后续这个问题 https stackoverflow com questions 20598199 对于如何正确使用CXF RS组件我还是有点困惑 我很困惑为什么我们需要
  • 使用 svn 1.8.x、subclise 1.10 的 m2e-subclipse 连接器在哪里?

    我读到 m2e 的生产商已经停止生产 svn 1 7 以外的任何版本的 m2e 连接器 Tigris 显然已经填补了维护 m2e subclipse 连接器的空缺 Q1 我的问题是 使用 svn 1 8 x 的 eclipse 更新 url

随机推荐

  • 机器智能与人类智能的竞争:技术创新的驱动力

    1 背景介绍 人工智能 Artificial Intelligence AI 和机器学习 Machine Learning ML 是最近几年最热门的技术领域之一 随着数据量的增加和计算能力的提高 机器学习技术的发展得到了极大的推动 机器学习
  • 电脑快速打开计算器的方法

    大家好 我是爱你三千遍斯塔克 我们平常在运算时 经常要要使用计算器 那么计算器有什么快速打开方法吗 这里有一些参考方法 可供大家进行参考 希望对大家有帮助 希望你喜欢我的内容 记得关注我哦 我会继续为大家带来更好的作 1 win R 打开运
  • 机器学习中的知识共享:模型与数据的交流与协作

    1 背景介绍 机器学习 Machine Learning 是一种通过数据学习模式和规律的计算机科学领域 在过去的几年里 机器学习技术在各个领域得到了广泛应用 如图像识别 自然语言处理 推荐系统等 随着数据规模的不断增长 单个机器学习模型的复
  • 人工智能与机器学习:未来的编程范式

    1 背景介绍 人工智能 Artificial Intelligence AI 和机器学习 Machine Learning ML 是现代计算机科学的重要领域之一 它们旨在让计算机能够自主地学习 理解和进化 以解决复杂的问题 随着数据量的增加
  • JDK21和 Flowable 7.0.0

    JDK21和 Flowable 7 0 0 一 Flowable 二 项目搭建 1 依赖包 2 数据库 3 资源文件 1 YML配置文件 2 Drools kbase
  • 序列模型(4)—— Scaling Laws

    本文介绍 LLM 训练过程中重要的 Scaling Laws 这是一个 经验规律 指出了 固定训练成本 总计算量FLOPs C C C 时 如何调配模型规模 参数量 N N
  • golang中有没有一种有效的方法来计算执行时间?

    我正在寻找计算 go 执行时间的最佳方法 func main start time Now time Sleep time Second 2 something doing here elapsed time Since start fmt
  • PHP 正则表达式:找不到结束分隔符“^”

    我在使用正则表达式时遇到了一些麻烦 这是我的代码 pattern 0 9 if preg match pattern input echo yes else echo nope 我运行它并得到 警告 preg match function
  • 正则表达式检查 Facebook 视频 URL

    我尝试使用正则表达式检查 Facebook 视频网址 这是有效的 Facebook 视频 URL 示例 https www facebook com video php v 100000000000000 https www faceboo
  • Spark中高效计算top-k元素

    我有一个类似于以下内容的数据框 key thing value u1 foo 1 u1 foo 2 u1 bar 10 u2 foo 10 u2 foo 2 u2 bar 10 并希望得到以下结果 key thing sum value r
  • Chrome 版本 44 在 selenium 测试中存在一些问题

    我正在使用 Selenium 和 Chrome 编写一个测试 昨天当我的 Chrome 从 43 更新到 44 时 我的测试遇到了一些关于 action sendkey arrow down 等的问题 我尝试卸载 Chrome 并安装 Ch
  • MySQL:一位的最小数据类型

    我想在表中添加一列 其中包含两个值 1 或 0 MySQL 中存储数据的最小数据类型是什么 A TINYINT 1 可以包含之间的数字 127 to 127 您可以使用位 1 http dev mysql com doc refman 5
  • 在 gradle.build 中使用 fatjar 插件时如何指定主类

    我有兴趣在单个可执行 jar 文件中构建一个包含所有模块依赖项和外部 jar 的单个 jar 我将能够使用该文件运行java jar myApp jar 我有模块 A 它依赖于模块 B 目前我正在使用 gradle 我的build grad
  • 如何以特定于区域设置的方式格式化不完整的日期和时间

    如何以特定于区域设置的方式格式化不完整的日期和 或时间 我有一个日期 时间存储在一组 7 个字符串中 dayOfWeek 一周中的哪一天 1 7 dayOfMonth 该月的哪一天 1 31 monthOfYear 一年中的月份 0 11
  • CSS焦点子元素改变父元素

    我想设计一个在表单字段内具有标签和输入的表单 当我在输入内写入内容 可能带有焦点 时 我希望边框亮起一些蓝色 现在我有这样的东西 HTML div class login form field div
  • removeFrom* 不起作用并且没有错误

    我有一个我认为很简单的问题 但无法解决 由于某种原因 我有一个使用removeFrom save 的控制器 它不会抛出任何错误 但不会执行任何操作 跑步 Grails 1 2 Linux Ubuntu 删除以下应用程序以重现该问题 我通过
  • 如何弹出 Outlook 提醒并保持在其他窗口之上

    如何制作 Outlook 提醒弹出窗口并保持在其他窗口之上 网上查了好久 我无法找到这个问题的满意答案 使用 Windows 7 和 Microsoft Outlook 2007 当提醒闪烁时 它不再提供模式框来吸引您的注意力 在工作中 安
  • DBAccess 创建自定义 DBAccessSettings

    我正在测试 DBAccess 以查看是否可以在项目中使用它 我在更改 sqlite 文件的位置时遇到问题 我希望它位于缓存目录中 这是我到目前为止在 AppDelegate m 中编写的代码的一部分 DBAccessSettings get
  • C++11 中的 3 条默认成员弃用规则

    根据下面广为人知的表格 当用户提供一个或多个复制赋值函数 复制构造函数和析构函数时 C 11 中不推荐自动编译器生成默认复制构造函数和复制赋值 红色单元格表示弃用 考虑到 三法则 这是完全有道理的 然而 该表显示 在用户提供的复制构造函数
  • 类型NotPresentExceptionProxy

    从 Surefire 2 6 升级到 Surefire 2 13 时 我得到TypeNotPresentExceptionProxy运行我的单元测试时 java lang ArrayStoreException sun reflect an