java - 更改给定类的类加载器

标签 java classpath

所以这个项目中所有的资源读取都是这样完成的:

SomeLoadingClass.class.getResource(resource);

为了测试,我想连接一个不同的配置文件以供使用。就像安全网一样,配置文件中包含正确的内容。

鉴于我正在测试 class A 中编写测试,并且上面的代码片段发生在其他地方,我如何 - 添加一个新文件到类路径(大概是类 SomeLoadingClass) 以便使用我想要的配置文件,而不是在 .classpath 文件中设置的配置文件。

我更愿意能够“覆盖”现有的配置文件,而不是吹走 .classpath 的全部内容 - 这可能吗?如果是,怎么办?

抱歉 - 我在这里阅读了一些类路径条目,但它们似乎并没有完全符合我的要求。 (它们都是关于覆盖当前线程的类加载器,这在这里似乎不合适 - 即不起作用)

编辑这个一个测试我想用类路径 Swing 。就是这样,仅此而已。我不想改变所有其他测试。此外,没有使用 Maven。

最佳答案

如果您使用的是 maven,我相信您可以将您的测试配置文件放在 src/test/resources 目录中,名称相同,它会在测试时覆盖真实的配置文件。

关于java - 更改给定类的类加载器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14858735/

相关文章:

java - 有没有办法通过POM.xml修改classpath?

java - 如何从使用 Maven 的 Eclipse 项目中检索类路径字符串?

java - 未找到类错误,但类位于类路径上的 JAR 文件中

java - ClassPathXmlApplicationContext 和 ClassPathResource 之间的区别

groovy - 如何设置嵌入式 Groovy 脚本类路径?

java - 当我触摸屏幕时 Android 应用程序崩溃 - nullPointerException

java - JPA和Hibernate中@MapKey、@MapKeyColumn和@MapKeyJoinColumn的区别

Java:绘制文本最快的方法?

java - 是否有一种模式可以根据 Java 中先前的结果执行一系列方法?

java - GPS 启用检查后销毁并重新启动应用程序