配備されたシステムから電子メールが送信されるときに、次のエラーが発生します。ClassNotFoundException com.sun.mail.util.SharedByteArrayInputStream
Caused by: java.lang.NoClassDefFoundError: com/sun/mail/util/SharedByteArrayInputStream
....
....
Caused by: java.lang.ClassNotFoundException: com.sun.mail.util.SharedByteArrayInputStream
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass
私が使用しています:
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.1</version>
</dependency>
これは昨年のために働いてきたし、今、突然それがこの例外をスローしています。 javax.mail
などのバージョンを変更しました
javax.mail:mail:jar:1.5.0
を依存関係に追加しようとしましたが、コンパイル時にjarが不正であるとのエラーが表示されました。 Mavenは次のエラーを与える:
import com.sun.mail.util.*;
import javax.mail.util.SharedByteArrayInputStream;
だから、MimeMessage
を作成するときに、それがあるという点で、私はこのエラーを取得することを奇妙に思える:私には奇妙に思える何Please use the correct artifact for JavaMail. You should be using com.sun.mail:javax.mail...
& Found Banned Dependency: javax.mail:mail:jar:1.5.0
はjavax.mail.internet.MimeMessage
には、以下の輸入を持っているということですjavax.mail.util.SharedByteArrayInputStream
の代わりにcom.sun.mail.util.SharedByteArrayInputStream
を取得しようとしています。
私は同じ質問が掲載されていることを知っていますが、回答は常に私がすでに使用しているjavax.mail.jar
を使用するように思われます。
Webアプリケーションにjavax.mail.jarがパッケージ化されていますか?あなたのクラスパスのどこかに、おそらくあなたのサーバのlibディレクトリのどこかに、javax.mailクラスを持つ別のjarファイルがありますか? –
@BillShannonです。他のライブラリが探しているもの'' 'javax.mail.util''の代わりに' 'com.sun.mail.util'''のバージョンを探しているということには何か手掛かりはありますか? –
私はtomcatのインスタンスを調べました。私が見つけた唯一のメールジャーは '' 'javax.mail-1.5.1.jar''と' 'bcmail-jdk15on-1.50.jar''でした。 –