Dropwizard集成测试找不到资源文件

2023-12-02

对于 dropwizard 来说非常陌生,我正在尝试“完全”创建一个集成测试,以他们为例:

https://dropwizard.github.io/dropwizard/manual/testing.html
public class LoginAcceptanceTest {

@ClassRule
public static final DropwizardAppRule<TestConfiguration> RULE =
        new DropwizardAppRule<TestConfiguration>(MyApp.class, ResourceHelpers.resourceFilePath("dev-config.yml"));

@Test
public void loginHandlerRedirectsAfterPost() {
    //Client client = new JerseyClientBuilder(RULE.getEnvironment()).build("test client");


}
}

到目前为止有两个问题:首先,当我从 intellij 运行测试时,它失败并出现以下异常:

Caused by: java.lang.IllegalArgumentException: resource dev-config.yml not found.

完整的堆栈跟踪:

java.lang.ExceptionInInitializerError
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:140)
at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1057)
at java.lang.reflect.Field.getFieldAccessor(Field.java:1038)
at java.lang.reflect.Field.get(Field.java:379)
at org.junit.runners.model.FrameworkField.get(FrameworkField.java:73)
at org.junit.runners.model.TestClass.getAnnotatedFieldValues(TestClass.java:230)
at org.junit.runners.ParentRunner.classRules(ParentRunner.java:255)
at org.junit.runners.ParentRunner.withClassRules(ParentRunner.java:244)
at org.junit.runners.ParentRunner.classBlock(ParentRunner.java:194)
at org.junit.runners.ParentRunner.run(ParentRunner.java:362)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:74)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:211)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: resource dev-config.yml not found.
at io.dropwizard.testing.ResourceHelpers.resourceFilePath(ResourceHelpers.java:23)
at com.amplify.ckla.resources.TeacherConfigResourceIntegrationTest.<clinit>(TeacherConfigResourceIntegrationTest.java:12)
... 21 more
Caused by: java.lang.IllegalArgumentException: resource dev-config.yml not found.
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
at com.google.common.io.Resources.getResource(Resources.java:197)
at io.dropwizard.testing.ResourceHelpers.resourceFilePath(ResourceHelpers.java:21)
... 22 more

dev-config.yml 肯定在那里:

ls -a 
.               .idea               build.sh            pom.xml
..              CKLA.iml            dev-config.yml          src
.git                README.md                       target
.gitignore          develop.sh           

将程序的运行目录更改为项目的根目录(具有输出的目录)ls -a命令)。目前您很可能正在运行它./target目录。

或者如果你想/需要逃离.target更改命令行选项以引用配置文件:../dev-config.yml

Edit:正如 @nightograph 评论的那样IntelliJ是右键单击项目文件夹并将目录标记为"Resources Root"

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

Dropwizard集成测试找不到资源文件 的相关文章

  • IntelliJ Idea 无法与 svn 更新一起正常工作

    在 IntelliJ Idea Community 版本中进行 svn 更新或比较操作时 我不断遇到相同的错误 svn E175002 Received fatal alert unexpected message svn E175002
  • IntelliJ 12 中的 Android Hello World - 找不到 android.app.Activity 类

    请看下文 我感觉 SDK 配置不正确 但我不知道如何解决 我尝试用谷歌搜索答案 但没有人遇到这个确切的问题 难道是我的Java版本不对 这两个 SDK 似乎可能相互冲突 我通过以下方式制作了这个项目 创建新项目 Android gt 应用模
  • 用 lambda 表达式替换匿名函数

    我在 Java 8 映射操作中传递一个函数 Intellij 告诉我它可以用 lambda 表达式替换 但我不知道如何在不创建中间对象结构的情况下做到这一点 这就是我所做的 List
  • 如何在 IntelliJ IDEA 中按 JSON 中的路径搜索?

    我有很长的 JSON 文件 例如 a b c keyC 和路径 a b c 如何使用路径在 JSON 中搜索 转到行 问题类似于如何在 IntelliJ IDEA 中复制 JSON 中的路径 https stackoverflow com
  • 如何使用键盘快捷键在Intellij-IDEA中显示(展开)隐藏(折叠)的代码?

    如何在 IntelliJ IDEA 中显示 展开 隐藏 折叠 的代码 如下图所示 仅使用键盘而不触摸鼠标 在 IntelliJ IDEA 中 您可以使用以下快捷方式来折叠 展开代码块 To fold and unfold CURRENT s
  • JavaFX 模块对于 VM 不可见

    我使用 Intellij Idea 作为我的 IDE 由于我需要使用 css 文件 因此我安装了 Intellij Ultimate 现在 javaFx 不适用于它们 抛出异常 boot层初始化时出错 java lang module Fi
  • 如何从 android studio 3.2 中删除 generatedJava

    安卓工作室3 2 我已将我的项目迁移到 android studio 3 2 迁移后我看到生成的Java我的 Android 文件夹结构中的文件夹 我没有任何用处 我怎样才能删除这个生成的Java文件夹来自安卓工作室 为什么要删除这个 He
  • IntelliJ 对于 Java 项目使用的默认构建过程是什么?

    直接从 IntelliJ 中的 IDE 构建 Java 项目非常好 它速度很快 而且很有效 我无法找到任何有关 IntelliJ 如何进行这些默认构建的文档 我猜它使用Ant 我想做的是为下载我的项目的任何人自动化这个快速 轻松的构建过程
  • 在 IntelliJ IDEA 11 中编译期间未检测到模块依赖性

    我正在开发一个 Android 应用程序 我正在尝试包含图形视图 https github com jjoe64 GraphView绘制一些图表 需要将其作为模块依赖项包含在内 执行此操作后 IntelliJ IDE 会正确检测到包 我可以
  • RubyMine 无法识别 Rails 应用程序

    我有一个关于使用从目录打开方法将 Rails 应用程序导入 RubyMine 的问题 我的计算机上有两个不同的 Rails 应用程序 但 RubyMine 只将其中一个识别为 Rails 应用程序 而将另一个识别为普通目录 这是一个问题 因
  • build.gradle 文件,使用 << 符号的任务,intellij 警告:“无法推断参数类型”

    我是 groovy 和 gradle 的新手 想知道是否有人知道为什么我的 scriplet 不起作用 编辑实际上它确实有效 但警告仍然出现 此部分是从 build gradle 脚本中取出的 intellij 强调了这一点并抱怨它 无法推
  • 在 IntelliJ IDEA 中使用 import 语句创建新的实时模板

    这是我想要移植的 Eclipse 模板 import org apache log4j Logger private static final Logger LOG Logger getLogger enclosing type class
  • IntelliJ 中有控制台滚动锁吗?

    我最近从 Eclipse 迁移到 IntelliJ 我缺少 或者可能找不到 的一个功能是控制台滚动锁 即停止重新关注最新的控制台条目 这在 IntelliJ 中可能吗 我用的是v9旗舰版 这取决于你的光标在哪里 只需单击您想要滚动锁定的部分
  • 无法解析插件 Java Spring

    我正在使用 IntelliJ IDEA 并且我尝试通过 maven 安装依赖项 但它给了我这些错误 Cannot resolve plugin org apache maven plugins maven clean plugin 3 0
  • IntelliJ可以自动创建装饰器类吗?

    有时 我创建一个像这样的装饰器类 class MyInterfaceDecorator implements MyInterface private final MyInterface delegate constructor taking
  • 在 Intellij-Idea 调试器中转储一个巨大的数组

    Idea 有没有办法将一个非常大的整数数组的内容转储到剪贴板中 数组上的 复制值 不返回任何内容 要使用复制值获取剪贴板中的值 您需要定义一个 Java 数据类型渲染器 来解释数组的内容 右键单击您的数组变量 选择 查看为 gt 创建 在
  • 我找不到 IntelliJ 快捷方式

    我使用 vim 一段时间 我知道有一个 intellij vim 插件 我很好奇内置的 IntelliJ 文本导航存在什么 如何打开实时模板来创建模板 如何查看以 tr 开头的现有模板列表 如何进行全局搜索并在当前文档中进行搜索 然后转到下
  • readLine() 只读取控制台中的第二个输入

    我刚刚开始使用 Kotlin 所以如果这是一个愚蠢的问题 我认为这可能是 我深表歉意 我正在跟进this https kotlinlang org docs tutorials jvm get started html指南 但遇到了一个问题
  • 如何将本机库链接到 IntelliJ 中的 jar?

    我正在尝试在 IntelliJ 中设置 OpenCV 但是我一直在弄清楚如何告诉 IntelliJ 在哪里可以找到本机库位置 在 Eclipse 中 添加 jar 后 您可以在 Build Config 屏幕中设置 Native 库的位置
  • Intellij:是否有全局目录按模式排除选项?

    我的所有项目都有相同的目录结构 我只想每次都排除相同的目录 而不是为每个项目选择每个目录并必须选择Mark Directory as gt Excluded 例如 bower components node modules etc 那可能吗

随机推荐