Javamail更改端口号

Javamail更改端口号,java,jakarta-mail,Java,Jakarta Mail,好的,我一直在尝试编写一些代码,用于读取共享邮箱的收件箱 我找到了这个密码 try { // create properties field Properties properties = new Properties(); properties.put("mail.pop3.host", host); properties.put("mail.pop3.port", "110"); Session emailSe

好的,我一直在尝试编写一些代码,用于读取共享邮箱的收件箱

我找到了这个密码

try {
        // create properties field
        Properties properties = new Properties();

        properties.put("mail.pop3.host", host);
        properties.put("mail.pop3.port", "110");
        Session emailSession = Session.getInstance(properties, null);
        emailSession.setDebug(true);

        // create the POP3 store object and connect with the pop server
        Store store = emailSession.getStore("pop3s");

        store.connect(host, username, password);

        // create the folder object and open it
        Folder emailFolder = store.getFolder("INBOX");
        emailFolder.open(Folder.READ_ONLY);

        // retrieve the messages from the folder in an array and print it
        Message[] messages = emailFolder.getMessages();
        System.out.println("messages.length---" + messages.length);

        for (int i = 0, n = messages.length; i < n; i++) {
            Message message = messages[i];
            System.out.println("---------------------------------");
            System.out.println("Email Number " + (i + 1));
            System.out.println("Subject: " + message.getSubject());
            System.out.println("From: " + message.getFrom()[0]);
            System.out.println("Text: " + message.getContent().toString());

        }

        // close the store and folder objects
        emailFolder.close(false);
        store.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
在此之后,我得到以下错误

com.sun.mail.util.MailConnectException: Couldn't connect to host, port: removed, 995; timeout -1;

我看过很多帖子,似乎都没有提到这个问题,我在API中找不到对它的引用

您指定的
pop3s
没有设置端口,因此它使用了默认的995。见:

我将让@BillShannon告诉您如何指定非默认的
pop3s
端口


或者您可能真的想使用
pop3

如果要使用端口110,即标准的pop3端口,为什么要使用“pop3”(通过SSL的pop3)协议而不是“pop3”协议

如果您想使用标准端口,为什么要指定它而不是让JavaMail使用标准端口呢


另外请注意,如果您真的想使用pop3协议,那么为pop3协议设置属性不会有任何效果。您需要设置“mail.pop3s.*”属性。

mail.pop3.port
的类型为
int
so:
properties.put(“mail.pop3.port”,110)请参阅:我尝试了不改变端口值的方法,但仍然默认返回到995我完全错过了,就在我引用的表上方,我之所以推迟到@BillShannon,是因为声明了
mail.pop3s.
properties用于
pop3s.
com.sun.mail.util.MailConnectException: Couldn't connect to host, port: removed, 995; timeout -1;
mail.pop3.ssl.enable    boolean     If set to true, use SSL to connect and use the SSL port by default. Defaults to false for the "pop3" protocol and true for the "pop3s" protocol.