- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用程序使用保存配置设置的单例。这是代码:
private PropertiesSingleton() throws Exception {
InputStream appstream = this.getClass().getClassLoader()
.getResourceAsStream("application.properties");
props = new Properties();
try {
props.load(appstream);
} catch (IOException e) {
logger.log(Log.FATAL,
"Cannot find application.properties in classpath.", e);
throw e;
}
}
通常我的应用程序在容器内运行。对于我的单元测试,我必须使 application.properties 可供加载。我尝试过这样的:
@Before
public void init() throws Exception {
final FileInputStream inStream = new FileInputStream("../path/to/config/application.properties");
new NonStrictExpectations(ClassLoader.class) {
{
String.class.getClassLoader().getResourceAsStream("application.properties"); result = inStream;
}
};
}
测试不会启动,但会打印此堆栈跟踪:
java.lang.VerifyError
at sun.instrument.InstrumentationImpl.redefineClasses0(Native Method)
at de.lpm.ejb.archiving.ArchiveHandlerBeanTest$2.<init>(ArchiveHandlerBeanTest.java:50)
at de.lpm.ejb.archiving.ArchiveHandlerBeanTest.init(ArchiveHandlerBeanTest.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
最佳答案
我相信模拟类加载器根本不可能,因为它首先存在。在类加载器出现之前你不能做任何事情。因此,请尝试模拟调用者,而不是类加载器。
关于java - 使用 JMockit 模拟 ResourceLoading,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17234599/
我正在尝试将 res 文件中的图标加载到图像列表中。我使用 Delphi ImageEditor 创建了 res 文件。 这样我尝试加载图标: //if ImageList1.ResourceLo
我正在使用 Template10 制作 UWP 应用程序,目前我的项目中有这个文件夹结构用于本地化: Localization |_en | |_Resources.resw |_it-IT
我刚刚尝试使用 Quarkus,但在 ResourceLoader 上遇到了问题。具体来说,当我尝试使用 ResourceLoader 注入(inject)时,maven 的全新安装出错 @Autow
我的应用程序使用保存配置设置的单例。这是代码: private PropertiesSingleton() throws Exception { InputStream appstream =
我是 @Autowire ing org.springframework.core.io.ResourceLoader进入我的一个@Service类。 在测试期间,我想访问 ResourceLoade
我已经开始为 Windows 8.1 创建 Windows 应用商店应用程序,但现在我遇到了有关本地化的问题。 我想在设计时显示 .resw 文件中的字符串资源,但每次尝试都失败了,尽管它在运行时有效
我正在使用 ResourceLoader.GetString 从我的 .resw 文件中获取字符串资源。我能够在键中不带点的情况下检索资源,但带点的资源会作为空字符串返回。例如: var rl = n
我希望创建一个基于 Spring 配置的层次结构。最简单的形式是几个“核心”库和几个能够覆盖“核心”库中的 bean 的“自定义”项目。 当通过 Maven 运行非常简单的单元测试时,无法找到“核心”
我正在寻找一种创建自定义 ResourceLoader 的方法,它将使用从 hbase 表中读取的属性。我发现我可以创建自己的 ApplicationContext,覆盖 getResource 并使
此问题引用了另一篇 stackoverflow 帖子 - How to load all files of a folder to a list of Resources in Spring? 我想使
我正在尝试使用这样的 Spring 资源加载器读取文本文件: Resource resource = resourceLoader.getResource("classpath:\\static\\
我正在尝试使用 Velocity 创建一个由 Spring 的 JavaMailSender 类发送邮件的电子邮件模板。我决定用来在我的 Web 应用程序中查找 Velocity 模板的资源加载器是位
我想运行https://github.com/spring-projects/spring-security-kerberos在我的机器上(通过 Intellij idea)。我尝试构建和运行的模块是
我有一个基于 spring-boot 并使用 gradle 创建的简单日志记录应用程序。以下堆栈跟踪的根本问题可能是什么?: ERROR | Application startup failed ja
我有一个 Windows 8 应用程序,我按照描述进行了本地化 in the MSDN .我的资源文件使用默认名称(“Resources.resw”)和位置(“Strings\en-US”等)。 当我
我正在使用 spring 进行一些测试,但出现此错误: java.lang.NoClassDefFoundError: org/springframework/core/io/ResourceLoad
每当我运行 Junit 的 cucumber 测试时,我都会遇到错误。这是以下异常。任何帮助都会很棒 注意: 项目没有错误 java.lang.NoClassDefFoundError: cucumb
我有一个 spring 项目,我在其中使用如下 validator : 当我运行该项目时,我得到以下 BeanCreationException: org.spri
出于测试原因,我尝试在本地使用EmbeddedSolrSolver(我知道它已被弃用,仅用于测试)。我正在研究这个例子 http://balabtech.wordpress.com/2011/10/1
我有一个 spring 项目,我在其中使用如下 validator : 当我运行该项目时,我得到以下 BeanCreationException: org.spri
我是一名优秀的程序员,十分优秀!