1

あなた方は私を自己意識させています。私はこれをより良くしようとします。

さて、このプログラム(私を殺さないでください。私はそれをダウンロードしました)は、私が知る限り、Windows7とUbuntuでのみ動作します。Windows 8で開くと、「Java例外エラー」と表示されます。

catch(messagingException ex)これはファイルの最後にあると関係があると思います。確かに、Javaについてはよくわかりませんが、どこかから始めなければなりません。私はJavaがすべてのプラットフォームに対応していることを知っています!

また、複数のファイルと複数のGmailアカウントでこのプログラムを試しました...Comcastのメールアドレスでも試しました。実際の郵送部分に
は「JavaMailAPI」(http://www.oracle.com/technetwork/java/javamail/index.html )を使用しています。

Windows 8のターミナルで開くと、次のように表示されます。

Exception in thread "Main" java.lang.noclassdeffounderror: java/mail/mailexception
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.langf.Class.privateGetDdecLaredMethods(Unkown source)
at java.lang.Class.getMethod(unknown source)
at sun.launcher.LauncherHelper.getMainMethod(Unknown source)
caused by: java.lang.classnotfoundexception: java.mail.messagingException
at java.net.URLCLassLoader$1.run(unknown source)
at java.net.URLClassLoader$1.run(Unknown source)
at java.security.AccessController.doPrivaleged(native Method)
at java.net.URLClassLoader.findClass(Unknown source)
at java.lang.ClassLoader.findClass(Unkown source)
at jaa.lang.CLassLoader.loadClass(Unknown source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown source)
at java.lang.ClassLoader.loadClass(Unknown source)
... 6 more

コードは次のとおりです。

package testing;

import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Testing{
    public static void main(String[] args) {
        Properties props = new Properties();
        props.put("mail.smtp.host", "smtp.gmail.com");
        props.put("mail.smtp.socketFactory.port", "465");
        props.put("mail.smtp.socketFactory.class",
                "javax.net.ssl.SSLSocketFactory");
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.port", "465");

        Session session = Session.getDefaultInstance(props,
            new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("Email","Password");
                }
            });

        try {
                        BodyPart messageBodyPart = new MimeBodyPart();
                        Multipart multipart = new MimeMultipart();
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress("Email Address"));
            message.setRecipients(Message.RecipientType.TO,
                    InternetAddress.parse("Email Address to send "));
            message.setSubject("Subject");
            message.setText("Message");
                         String filename = "attachment location";
         DataSource source = new FileDataSource(filename);
         message.setDataHandler(new DataHandler(source));
         message.setFileName(filename);
         multipart.addBodyPart(messageBodyPart);
            Transport.send(message);
            System.out.println("Done");
                } catch (MessagingException ex) {
                Logger.getLogger(Testing.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
}

プログラムについて他に何か必要な場合は、質問してください!

4

1 に答える 1

0

Javaメールをダウンロードする必要があります

このアプリケーションでJavaMailが必要な場合は、必要なJARをJavaMailとしてパッケージ化してインストールするインストーラーをビルドする必要があります。

于 2013-02-17T15:49:06.920 に答える