当前位置: 首页 > 知识库问答 >
问题:

Spring Boot中发送电子邮件时的NoSuchMethodException

柯易安
2023-03-14

我和Gradle有Spring靴应用程序


dependencies {
    compile('javax.xml.bind:jaxb-api:'+ jaxbVersion)
    compile('org.apache.xmlgraphics:fop:' + apacheFOPVersion)
    compile('com.amazonaws:aws-java-sdk-s3:' + amazonS3Version)
    compile('org.apache.commons:commons-lang3:' + commonsLangVersion)
    compile('commons-fileupload:commons-fileupload:' + commonsFileUploadVersion)
    compile('org.springframework:spring-test:4.3.13.RELEASE')
    compile('net.authorize:anet-java-sdk:' + anetSDKVersion)
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('io.springfox:springfox-swagger2:' + swaggerUiVersion)
    compile('io.springfox:springfox-swagger-ui:' + swaggerUiVersion)
    compile('org.springframework.boot:spring-boot-starter-data-redis')
    compile('org.springframework.boot:spring-boot-starter-data-mongodb')
    compile('org.springframework.cloud:spring-cloud-security')
    compile('org.springframework.cloud:spring-cloud-starter-config')
    compile('org.springframework.cloud:spring-cloud-starter-security')
    compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-client')
    compile('org.springframework.security.oauth:spring-security-oauth2')
    compile('org.springframework.cloud:spring-cloud-starter-openfeign')
    compile files('../models/build/libs/quickboard.models-' + modelsVersion + '.jar')
    testCompile('org.springframework.boot:spring-boot-starter-test')
    compile("com.intuit.quickbooks-online:ipp-v3-java-data:3.0.0")
    compile(group: 'com.intuit.quickbooks-online', name: 'ipp-v3-java-devkit', version: '3.0.5', classifier: 'jar-with-dependencies')
            {
                exclude group: 'javax.mail', module: 'mailapi'
            }
    compile(group: 'com.intuit.quickbooks-online', name: 'oauth2-platform-api', version: '3.0.5', classifier: 'jar-with-dependencies')
            {
                exclude group: 'javax.mail', module: 'mailapi'
            }
    compile group: 'com.ecwid', name: 'maleorang', version: '3.0-0.9.6'
    compile group: 'com.sun.mail', name: 'javax.mail', version: '1.5.0'
    compileOnly 'org.projectlombok:lombok:1.18.4'

}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
    }
}

configurations {
    all*.exclude group: 'javax.mail'
}
Message msg = new MimeMessage(session);
            msg.setFrom(new InternetAddress("myemail@domain.com"));
            msg.addRecipient(Message.RecipientType.TO,
                    new InternetAddress(toEmail, emailSubject));

            msg.setSubject(emailSubject);
//            msg.setText(message);
            msg.setContent(message, "text/html; charset=utf-8");
            Transport.send(msg);
java.lang.NoSuchMethodError: com.sun.mail.util.TraceInputStream.<init>(Ljava/io/InputStream;Lcom/sun/mail/util/MailLogger;)V
    at com.sun.mail.smtp.SMTPTransport.initStreams(SMTPTransport.java:2016) ~[javax.mail-1.5.0.jar:1.5.0]
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1936) ~[javax.mail-1.5.0.jar:1.5.0]
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:654) ~[javax.mail-1.5.0.jar:1.5.0]
    at javax.mail.Service.connect(Service.java:313) ~[ipp-v3-java-devkit-3.0.5-jar-with-dependencies.jar:na]
    at javax.mail.Service.connect(Service.java:172) ~[ipp-v3-java-devkit-3.0.5-jar-with-dependencies.jar:na]
    at javax.mail.Service.connect(Service.java:121) ~[ipp-v3-java-devkit-3.0.5-jar-with-dependencies.jar:na]
    at javax.mail.Transport.send0(Transport.java:190) ~[ipp-v3-java-devkit-3.0.5-jar-with-dependencies.jar:na]
    at javax.mail.Transport.send(Transport.java:120) ~[ipp-v3-java-devkit-3.0.5-jar-with-dependencies.jar:na]

共有1个答案

屠华辉
2023-03-14

我刚刚将依赖项编译组:“com.sun.mail”,名称:“javax.mail”,版本:“1.5.0”降级为编译组:“com.sun.mail”,名称:“javax.mail”,版本:“1.4.5”并且现在可以工作了,看起来也没有必要从依赖项中排除MailAPI

configurations {
    all*.exclude group: 'javax.mail'
} 

无论有没有这些排除,代码都能正常工作

 类似资料:
  • 问题内容: 我正在使用sendgrid发送电子邮件,并且使用以下代码可以正常工作,但没有附件。 但是我需要发送附件,因此我搜索了github源和Web文档API,由于某种原因,没有javadocs,但是有一个示例GitHub sendgrid, 所以我一直在尝试直到它起作用为止,我缩小了一些异常和响应代码,起初我是被禁止的未经授权,最好是响应202,表示有效且已排队(在此处检查),这是我的代码发送

  • 问题内容: 在Swift 的正常情况下,我使用此代码发送邮件。 如何在SwiftUI中实现相同目标? 我需要使用吗? 问题答案: 如前所述,您需要将组件移植到via 。 这是一个简单的实现: 用法 : (在运行iOS 13的iPhone 7 Plus上进行了测试-就像一个护身符) 为Xcode 11.4更新

  • 主要内容:SmtpClient类,示例VB.Net应用程序可发送电子邮件。名称空间包含用于向简单邮件传输协议(SMTP)服务器发送电子邮件以供传送的类。 下表列出了一些常用的类: 编号 类 描述 1 代表电子邮件的附件。 2 将附件存储为电子邮件的一部分。 3 代表电子邮件发件人或收件人的地址。 4 存储与电子邮件关联的电子邮件地址。 5 表示可以使用类发送的电子邮件。 6 允许应用程序使用简单邮件传输协议(SMTP)发送电子邮件。

  • 主要内容:使用 CDOSYS 发送电子邮件,CDONTs 怎么样?,使用 CDOSYS 的实例CDOSYS 是 ASP 中的内建组件。此组件用于通过 ASP 发送电子邮件。 使用 CDOSYS 发送电子邮件 CDO (Collaboration Data Objects) 是一项微软的技术,设计目的是用来简化通讯应用程序的创建。 CDOSYS 是 ASP 中的内建组件。我们将向您演示如何通过 ASP 使用该组件来发送电子邮件。 CDONTs 怎么样? 微软已经在 Windows 2000、

  • 问题内容: 但是我已经尝试了一天多了,以获取与Django一起使用的电子邮件。 我收到此错误消息:当我尝试发送电子邮件时 这是我创建电子邮件并尝试在其视图中发送的地方: 我的设置文件如下: 我尝试过使用进行测试发送python -m smtpd -n -c DebuggingServer localhost:1025并获得了成功,但是当最终归结为真正却没有成功时。 当我尝试从外壳执行send_ma

  • 我不想问关于用flutter发送电子邮件的事。我使用https://pub.dev/packages/flutter_email_sender#-readme-tab-发送电子邮件。 视图.省道