コード スニペットでは、ローカルホストを使用して電子メールを送信しようとすると、「接続が拒否されました」エラーが発生します。 SMTPサーバー。これは、SMTP サーバーがそのホストまたはポートでリッスンしていないことを示します。
この問題を解決するには、次のいずれかを行う必要があります。
ローカル SMTP サーバーの使用が不可能な場合は、以下を利用できます。応答で提供された GoogleMail クラス。このクラスは、Google の SMTP サーバーを使用して電子メールを送信するプロセスを簡素化します。 GoogleMail を使用して変更されたコード スニペットは次のとおりです。
import com.google.api.services.gmail.Gmail; import com.google.api.services.gmail.model.Message; import javax.mail.MessagingException; import java.io.IOException; public class SendEmail { public static void main(String[] args) throws IOException, MessagingException { // Replace these variables with your own information String username = "your_gmail_username"; String password = "your_gmail_password"; String recipientEmail = "recipient_email_address"; String title = "This is the Subject Line!"; String message = "This is actual message"; // Construct an authorized Gmail service Gmail service = Utils.getGmail(username, password); // Send the email GoogleMail.Send(service, recipientEmail, "", "user1@XYZ.com", title, message); System.out.println("Sent message successfully..."); } }
メールを送信するたびにパスワードを入力する必要がないようにするには、Google から更新トークンを取得してファイルに保存する必要があることに注意してください。 .
SMTP 接続の問題に対処するか、提供されている GoogleMail クラスを利用することで、Java を使用して電子メールを正常に送信できます。必ずコード スニペットを調整して、自分のメール認証情報とメッセージのコンテンツを含めてください。
以上がJava で電子メールを送信すると「接続が拒否されました」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。