java.lang.NoSuchMethodError: com.sun.mail.util.TraceInputStream.<init>
基于maven的项目,发送邮件需要的包是
<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>
旧版本jdk带有如下包,导致出现这个错误
<dependency> <groupId>javax.mail</groupId> <artifactId>mailapi</artifactId> <version>1.4.3</version> </dependency>
因为需要找到项目里使用了该依赖的包,并且排除掉这个包即可,如下,我发现是swagger
排除后即可发送了,可以通过在写的发送程序引用的包里通过ctrl+引用的类,判断当前的引用是哪个类
发现是 mailapi 再去找依赖
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-staticdocs</artifactId> <version>${swagger2-version}</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </exclusion> <exclusion> <groupId>javax.mail</groupId> <artifactId>mailapi</artifactId> </exclusion> </exclusions> </dependency>