Springboot admin 发送邮件失败:com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user
发邮件已经是老生常谈了,今天又遇到了,而且又出了各种问题。我晕哦。
我的配置是:
spring.mail.host=smtp..com
spring.mail.username=klxxxx
spring.mail.password=qwer1234
spring.boot.admin.notify.mail.to=lkxxx@qq.com
出现了553:
-- ::21.022 WARN --- [ctor-http-nio-] d.c.b.a.s.notify.NotificationTrigger : Unexpected error while handling null org.springframework.mail.MailSendException: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: Mail from must equal authorized user
;
nested exception is:
com.sun.mail.smtp.SMTPSenderFailedException: Mail from must equal authorized user at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:) ~[spring-context-support-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:) ~[spring-context-support-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:) ~[spring-context-support-5.1..RELEASE.jar:5.1..RELEASE]
at de.codecentric.boot.admin.server.notify.MailNotifier.lambda$doNotify$(MailNotifier.java:) ~[spring-boot-admin-server-2.1..jar:2.1.]
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxFilter$FilterSubscriber.onSubscribe(FluxFilter.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFilter.subscribe(MonoFilter.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Mono.subscribe(Mono.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoIgnorePublisher.subscribe(MonoIgnorePublisher.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Mono.subscribe(Mono.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Mono.subscribe(Mono.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.onNext(FluxSubscribeOn.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPublish$PublishSubscriber.drain(FluxPublish.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPublish$PublishSubscriber.onNext(FluxPublish.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.UnicastProcessor.drainFused(UnicastProcessor.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.UnicastProcessor.drain(UnicastProcessor.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.UnicastProcessor.onNext(UnicastProcessor.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxCreate$IgnoreSink.next(FluxCreate.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxCreate$SerializedSink.next(FluxCreate.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at de.codecentric.boot.admin.server.eventstore.InstanceEventPublisher.lambda$publish$(InstanceEventPublisher.java:) ~[spring-boot-admin-server-2.1..jar:2.1.]
at java.util.ArrayList.forEach(ArrayList.java:) ~[na:1.8.0_131]
at java.util.Collections$UnmodifiableCollection.forEach(Collections.java:) ~[na:1.8.0_131]
at de.codecentric.boot.admin.server.eventstore.InstanceEventPublisher.publish(InstanceEventPublisher.java:) ~[spring-boot-admin-server-2.1..jar:2.1.]
at de.codecentric.boot.admin.server.eventstore.InMemoryEventStore.lambda$append$(InMemoryEventStore.java:) ~[spring-boot-admin-server-2.1..jar:2.1.]
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onSubscribe(FluxOnErrorResume.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Mono.subscribe(Mono.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onError(FluxPeekFuseable.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onError(Operators.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:) [reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxMap$MapSubscriber.onError(FluxMap.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.FluxRetryPredicate$RetryPredicateSubscriber.onError(FluxRetryPredicate.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$TcpClientSubscriber.onError(HttpClientConnect.java:) ~[reactor-netty-0.8..RELEASE.jar:0.8..RELEASE]
at reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:) ~[reactor-core-3.2..RELEASE.jar:3.2..RELEASE]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.operationComplete(PooledConnectionProvider.java:) ~[reactor-netty-0.8..RELEASE.jar:0.8..RELEASE]
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.channel.pool.SimpleChannelPool.notifyConnect(SimpleChannelPool.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.pool.SimpleChannelPool.access$(SimpleChannelPool.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.pool.SimpleChannelPool$.operationComplete(SimpleChannelPool.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.pool.SimpleChannelPool$.operationComplete(SimpleChannelPool.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.fulfillConnectPromise(AbstractNioChannel.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:) ~[netty-transport-4.1..Final.jar:4.1..Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$.run(SingleThreadEventExecutor.java:) ~[netty-common-4.1..Final.jar:4.1..Final]
at java.lang.Thread.run(Thread.java:) ~[na:1.8.0_131]
难道是密码错误吗? 仔细确认,密码是没错的。
故意把密码设置错误,得到另外一个异常: Caused by: javax.mail.AuthenticationFailedException: 535 Error: authentication failed
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-- ::52.452 ERROR --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.autoconfigure.mail.MailSenderValidatorAutoConfiguration': Invocation of init method failed; nested exception is java.lang.IllegalStateException: Mail server is not available
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$(AbstractBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:) ~[spring-context-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:) ~[spring-context-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:) ~[spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:) [spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:) [spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:) [spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:) [spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:) [spring-boot-2.1..RELEASE.jar:2.1..RELEASE]
at com.lk.DemoSpringbootAdminApplication.main(DemoSpringbootAdminApplication.java:) [classes/:na]
Caused by: java.lang.IllegalStateException: Mail server is not available
at org.springframework.boot.autoconfigure.mail.MailSenderValidatorAutoConfiguration.validateConnection(MailSenderValidatorAutoConfiguration.java:) ~[spring-boot-autoconfigure-2.1..RELEASE.jar:2.1..RELEASE]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_131]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:) ~[na:1.8.0_131]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:) ~[na:1.8.0_131]
at java.lang.reflect.Method.invoke(Method.java:) ~[na:1.8.0_131]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:) ~[spring-beans-5.1..RELEASE.jar:5.1..RELEASE]
... common frames omitted
Caused by: javax.mail.AuthenticationFailedException: Error: authentication failed at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:) ~[javax.mail-1.6..jar:1.6.]
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:) ~[javax.mail-1.6..jar:1.6.]
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:) ~[javax.mail-1.6..jar:1.6.]
at javax.mail.Service.connect(Service.java:) ~[javax.mail-1.6..jar:1.6.]
at org.springframework.mail.javamail.JavaMailSenderImpl.connectTransport(JavaMailSenderImpl.java:) ~[spring-context-support-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.mail.javamail.JavaMailSenderImpl.testConnection(JavaMailSenderImpl.java:) ~[spring-context-support-5.1..RELEASE.jar:5.1..RELEASE]
at org.springframework.boot.autoconfigure.mail.MailSenderValidatorAutoConfiguration.validateConnection(MailSenderValidatorAutoConfiguration.java:) ~[spring-boot-autoconfigure-2.1..RELEASE.jar:2.1..RELEASE]
... common frames omitted
密码错误确实会出现553,但是具体原因是不同的。可见, 密码是没问题的。
需要一个授权码? 我记得163邮箱是挺好用的。qq邮箱需要授权码, 163好像不需要的吧。。
难道需要额外配置:
spring.mail.protocol=smtp
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.ssl.enable=true
spring.mail.test-connection=true
加上了,然并卵。
这坑爹啊。。 查看所有可用的配置,偶然看到了一个配置 spring.boot.admin.notify.mail.from,设置一下吧, 同 spring.mail.username=klxxxx 一样的。 重启, 好了!
参考
https://www.cnblogs.com/xibei666/p/9016593.html
https://blog.csdn.net/sun2015_07_24/article/details/52074898
Springboot admin 发送邮件失败:com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user的更多相关文章
- com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user
1.错误描写叙述 553 Mail from must equal authorized user com.sun.mail.smtp.SMTPSendFailedException: 553 Mai ...
- jenkins配置邮件 -- com.sun.mail.smtp.SMTPSenderFailedException: 550 5.7.1 Client does not have permissions to send as this sender
jenkins配置邮件设置 发送邮件测试时,报错: com.sun.mail.smtp.SMTPSenderFailedException: Client does not have permissi ...
- 【总结 】550,535,553 Mail from must equal authorized user— jenkins(hudson) email163邮箱和26邮箱成功配置总结
Failed to send out e-mail com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal author ...
- 【异常】553 Mail from must equal authorized user
1 详细异常打印 2019-08-12 14:54:42,178 ERROR org.apache.camel.processor.DefaultErrorHandler: Failed delive ...
- 实战SpringBoot Admin
长话短说哦,直接查看下文吧 目录 声明 先锋 前提 SpringBoot Admin 介绍 服务端的搭建 客户端的搭建 参数的指南 尾声 声明 见名知意,实战SpringBoot Admin,实战!实 ...
- 使用SpringBoot Admin监控SpringCloud微服务
spring-boot admin的github地址:https://github.com/codecentric/spring-boot-admin 本文基于SpringCloud的环境和配置上增加 ...
- springboot简单发送邮件介绍
1.新建一个springboot项目 2.所需要的的jar包: <dependency> <groupId>org.springframework.boot</group ...
- 使用SpringBoot + JavaMailSender 发送邮件报错 Mail server connection failed;Could not connect to SMTP host
说明: 出于安全考虑,阿里云默认封禁 TCP 25 端口出方向的访问流量,无法在阿里云上的云服务器通过 TCP 25 端口连接外部地址. [官方提示]:如果您需要使用阿里云上的云服务器对外部发送邮件, ...
- python通过SMTP发送邮件失败,报错505/535
python通过SMTP发送邮件失败:错误1:smtplib.SMTPAuthenticationError: (550, b'User has no permission') 我们使用pyth ...
随机推荐
- 那些年,很多人没看懂的Python内置函数
Python之所以特别的简单就是因为有很多的内置函数是在你的程序"运行之前"就已经帮你运行好了,所以,可以用这个的特性简化很多的步骤.这也是让Python语言变得特别的简单的原因之 ...
- JavaList列表的一些方法
import java.util.ArrayList;import java.util.Iterator;import java.util.List; public class Test1 { pub ...
- 使用GDB调试将符号表与程序分离后的可执行文件
环境: Centos7.3.GCC4.8.5 适用场景: 由于调试信息比较大,通常将程序分离为可执行程序和符号信息文件,只对外发布可执行程序,需要调试时再将符号信息文件附加. 一.创建可执行程序: u ...
- http://blog.csdn.net/u012905422/article/details/53340260
轉自:http://blog.csdn.net/u012905422/article/details/53340260 对于python2.7版本,很多教程(如http://stackoverflow ...
- Centos6两个镜像文件的合并方法
1.相关目录: /mnt/dvd1和/mnt/dvd2 用于挂载 Centos 镜像 /mnt/dvd3 合并后的镜像文件 /mnt/iso ISO储存 mkdir -p /mnt/dvd1 /mnt ...
- 关于mybatis中传入一个List,字符串数组,或者Map集合作为查询条件的参数
一.入参为List的写法: <select id="queryParamList" resultType="map" parameterType=&quo ...
- 【rabbitmq】RabbitMQ 集群与网络分区
网络分区(network partitions) 官网-网络分区 网络设备故障导致的网络分裂.比如,存在A\B\C\D\E五个节点,A\B处于同一子网,B\C\D处于另外一子网,中间通过交换机相连.若 ...
- 饿了么测试专场技术沙龙实况回顾&PPT 下载
PPT下载和视频观看链接 链接:https://pan.baidu.com/s/1dE8uXHZ 密码:6j5z视频直播回顾: http://www.itdks.com/dakashuo/playba ...
- 前端-JavaScript1-8——JavaScript之作业练习
1.表示气温有两种方法:摄氏度和华氏度.两者的关系是: 编写程序,让用户输入摄氏度,弹出对应的华氏温度. //第一步,让用户输入数字 var sheshidu = parseFloat(prompt( ...
- mac下 chmod 不了文件,可以右键查看文件简介处修改权限