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 ...
随机推荐
- sklearn中的朴素贝叶斯模型及其应用
1.(1)多项式 from sklearn.datasets import load_iris iris = load_iris() from sklearn.naive_bayes import G ...
- Python练习二
1.计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和 sum1 = 0 sum2 = 0 count = 0 while count < 99: count += 1 if ...
- Python基础:七、注释
有时候我们写的东西不一定都是给用户看的,或者不希望解释器执行(方便自己,方便他人),我们可以使用#来注释掉代码被注释的内容是不会执行的,可以方便后面的程序员来拜读你的代码. 1. 单行注释:#被注释的 ...
- 使用JenKins实现自动执行python脚本
1.使用Jenkins创建一个工程,工程主要配置项参照下图,其他配置项恢复默认 2.工程配置完成之后,点击[立即构建],执行完成后进入到控制台查看是否执行成功.
- 转载 JAVA gc垃圾回收机制
thanks:https://m.oschina.net/u/123553 一.GC概要 JVM堆相关知识 为什么先说JVM堆? JVM的堆是Java对象的活动空间,程序中的类的对象从中分 ...
- http options 请求
- Java面向对象程序设计的六大基本原则
1.开闭原则(Open Close Principle) 定义:一个软件实体如类.模块和函数应该对扩展开放,对修改关闭. 开放-封闭原则的意思就是说,你设计的时候,时刻要考虑,尽量让这个类是足够好,写 ...
- RocketMQ基本概念及原理介绍
基本概念 ProducerGroup 通常具有同样属性(处理的消息种类-topic.以及消息处理逻辑流程—分布式多个客户端)的一些producer可以归为同一个group.在事务消息机制中,如果某条发 ...
- abstract class VS interface
关于抽象类 abstract class: 1. 抽象方法必须在抽象类中 2. 抽象类和抽象方法要用abstract 关键字修饰 3. 不可以用new 来实例化一个abstract类,因为调用抽象方法 ...
- 【Oracle】ORA-14400: 插入的分区关键字未映射到任何分区
问题描述: 工作中使用kettle将原始库中的数据抽取到标准库中,在抽取过程中报错:[ORA-14400: 插入的分区关键字未映射到任何分区]/[ORA-14400: inserted partiti ...