最近有一个JIRA是需要enhance之前的batch模块(使用的spring-batch),和我之前的schedule的microservice结合,每天定时发送邮件给配置的Maintainer来回报当天的batch状况。mail的api被封装到了一个公司的包里,所以就直接依赖了这个包,但是却莫名奇妙的报错javaMailsender could not be found。
在这里插入图片描述
很奇怪,按理说既然是封装好的包不应该存在缺失依赖的问题,确认了下,包是在的。然后再想是不是没有扫描到,又去检查了扫描配置,发现还是没问题。又怀疑是不是注入方式又问题,因为封装的时候使用的是构造器去注入的,我本地使用的是autowire注入,怕两种注入方式不能混用,后来证明都不是 。直到看到了这个。
Autowire JavaMailSender with spring-boot-starter-mail not working?
在spring-boot的main里面加入了- -debug参数,最终发现是yml配置出了问题(spring.mail)
public static void main(String[] args) {
SpringApplication.run(Application.class, "--debug");
}
加上之后完美解决。
spring:
mail:
host: localhost
port: 25
username:xxxx
password:xxxxx
版权声明:本文为Damien_J_Scott原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。