Spring junit做单元测试时,报Failed to load ApplicationContext错误
发表于|更新于|Java
|总字数:203|阅读时长:1分钟|浏览量:
在做单元测试模块时,提示Failed to load ApplicationContext,经过查看,发现是测试单元中的一个注解指向了一个不存在的bean,该bean在applicationContext-web.xml中,而我们的代码的注解是
1 | @RunWith(SpringJUnit4ClassRunner.class) |
解决办法就是将这个bean的定义写在applicationContext-test.xml中。
当然这种错误也存在其他原因,比如:项目引用了其他模块,并且有相同名称的Spring配置文件,这也会导致Failed to load ApplicationContext这个错误。
1 | @ContextConfiguration(locations = { "classpath:spring*.xml", "classpath:mybatis.xml", "classpath:spring-redis.xml" }) |
解决方案
1 | @ContextConfiguration(locations = { "classpath*:spring*.xml", "classpath*:mybatis.xml", "classpath*:spring-redis.xml" }) |
当然,偷懒也是可以滴,比如:
1 | @ContextConfiguration(locations = { "classpath*:*.xml"}) |
文章作者: Charles
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 码农笔记!
相关推荐

2020-09-01
Kerberos、Impala、Druid的配合使用
本篇介绍了如何在开启Kerberos认证的情况下,数据库连接池Druid和Impala的配合使用。 背景由于生产环境开启了Kerberos的认证限制,原来可直接使用Druid连接池的方式便不可用了,需要重写Druid获取连接的逻辑,在其创建Impala连接时加入Kerberos认证的功能。 实现方式ImpalaDruidDataSource.class123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120import com.alibaba.druid.pool.DruidDataSource;import com.alibaba.d...

2019-08-06
CentOS安装OpenJDK1.8
因Oracle JDK自1.8.191开始就对企业服务进行付费使用了,那么公司的应对方案要么将JDK锁定在免费服务期的版本,要么就使用OpenJDK替代Oracle JDK,这两者本身出自同一份源码,Oracle JDK只不过比Open JDK多了一些特殊的功能(例如监控),那么我就用OpenJDK来代替OracleJDK。下面记录一下安装OpenJDK 8的步骤。 使用Yum安装OpenJDK 8对于Java来说,通常分为jre运行时环境和JDK开发工具包,高版本的Java已经将他们合二为一了。那么JDK 8还是分开安装的。可使用如下命令安装: 1yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel java-1.8.0-openjdk仅安装了jre,java-1.8.0-openjdk-devel则是JDK环境。 使用如下方式配置环境变量: 12345cat > /etc/profile.d/java8.sh <<EOF export JAVA_HOME=$(dirname $(dirname...

2019-07-29
Spark无法使用DateTimeFormatter
今天修改Bug时发现有部分Spark的程序还在使用Date().getHours()这种过期的方法,虽然也能使用但是保不齐那天升级JDK就趟坑了,于是就想把FastDateFormat、SimpleDateFormat、Date、Calendar这些古老的处理日期的组合换成JDK1.8的LocalDate、LocalDateTime、DateTimeFormatter这种当下比较推崇的组合。 有了想法后,我就开开心心的改成了如下的代码,我大概简化为如下: 12345val standard_fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")msgRdd.foreach(line => { val arriveTime = line.split(",")(8) val dateTime = LocalDateTime.parse(arriveTime, standard_fmt) }) 启动程序后本以为一次性就搞定,结果没想到出现了一...

2022-08-01
JKS证书转Nginx证书
本篇介绍如何将jks(java key store)证书转换为nginx格式的证书。 因业务需要,现在需要将所有的服务升级为https的方式访问,不管是对外还是内部网络都需要升级,然后负责安全的运维只丢给我一个压缩包,解压开只有以下文件: 1234xxx.jksxxx.keystorexxx.p12 # 这个文件不提供也可以xxx_password.txt 查看jks文件中的entry1keytool -list -keystore xxx.jks 输出如下信息: 12345678输入密钥库口令:密钥库类型: PKCS12密钥库提供方: SUN您的密钥库包含 1 个条目1, 2022年8月1日, PrivateKeyEntry,证书指纹 (SHA-256): 21:BC:49:11:72:DD:7C:32:32:37:59:6F:62:38:BB:E8:D5:79:ED:D6:27:DA:D3:06:6F:32:E3:A1:CC:23:2D:AC 其中1, 2022年8月1日, PrivateKeyEntry,这一个就是一个entry的信息,1表示这个entry的别名。...

2016-08-02
Mybatis中selectKey的使用
本篇介绍一下Mybatis中selectKey的使用。 在开发过程中,CRUD是免不了的,在插入数据时,通常我们只需要返回受影响行数即可,但也有些场景需要返回插入数据后的主键ID,在Mybatis中只需要使用selectKey即可实现。 自增主键使用示例通常我们会将SQL写在MyBatis的*Mapper.xml文件中,本次示例也是如此 创建表1234567CREATE TABLE `t_user` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'UserId', `username` varchar(80) NOT NULL COMMENT 'username', `password` varchar(80) NOT NULL COMMENT 'password', `create_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT 'create_time...

2018-11-03
Java11新特性
Java11已经于2018年9月25日发布,支持期限至2026年9月,这是Java 8之后的首个LTS(长期支持版),本篇学习并记录下该版本的新特性。 模块化系统(Project Jigsaw) JEP 261这是 Java 9 最核心的变化。它允许开发者将代码划分为模块(Module),明确定义导出哪些包以及依赖哪些模块。其目的就是解决classpath混乱问题,减少JRE体积。 其用法就是在项目根目录创建module-info.java,内容为 1234module cn.net.dev { requires java.sql; // 依赖 SQL 模块 exports cn.net.dev.api; // 只对外暴露 api 包} JShell (REPL) JEP 222和scala一样,Java现在也支持REPL了。 用法:直接在终端中输入jshell即可。 12345jshell> String s = "Hello World";s ==> "Hello World&q...
评论
WalineDisqus
公告
收集笔记






