我已经创建了一个带有发送按钮的基本GUI,该按钮调用sendmail函数,该函数在GUI外部调用时工作正常。但是当单击该按钮时,我收到以下错误:
janv。 13,2016 11:15:35 AM org.python.netty.channel.AbstractChannel $ AbstractUnsafe register AVERTISSEMENT:强制关闭其注册任务未被事件循环接受的频道:[id:0xa8bc713e] java.util.concurrent.RejectedExecutionException:事件执行程序终止
我已经尝试将该函数作为我的类Window的方法,但是我得到了同样的错误。
这里是sendmail功能(在GUI之外正常工作):
def sendmail(test):
try:
sender = "myemail@gmail.com"
recipient = "toemail@hotmail.com"
# Message container
msg = MIMEMultipart('alternative')
msg['Subject'] = "Link"
msg['From'] = sender
msg['To'] = recipient
# Body of the message
html = """\
<html>
<body>
<p>big<p>
</body>
</html>
"""
part = MIMEText(html, 'html')
msg.attach(part)
mail = smtplib.SMTP('smtp.gmail.com', 587)
mail.ehlo()
mail.starttls()
mail.login('myemail', 'mypassword')
mail.sendmail(sender, recipient, msg.as_string())
mail.quit()
print "Email was sent succesfully."
except:
print "Unexpected error: could not send email."
return 0
return 1
这是Window类:
class Window:
def sendclicked(self, event):
sendmail()
def __init__(self):
window = JFrame("Email application", defaultCloseOperation=JFrame.EXIT_ON_CLOSE, size=(255, 400), locationRelativeTo=None)
panel = JPanel()
tolabel = JLabel("To :", SwingConstants.RIGHT)
tolabel.setPreferredSize(Dimension(50, 20))
tofield = JTextField(15)
subjectlabel = JLabel("Subject :", SwingConstants.RIGHT)
subjectlabel.setPreferredSize(Dimension(50, 20))
subjectfield = JTextField(15)
messagetextarea = JTextArea("")
messagetextarea.setPreferredSize(Dimension(222, 200))
sendbutton = JButton("Send", actionPerformed=self.sendclicked)
sendbutton.setPreferredSize(Dimension(109, 20))
savebutton = JButton("Save as draft")
savebutton.setPreferredSize(Dimension(109, 20))
infofield = JTextField(20)
infofield.setEditable(False);
panel.add(tolabel)
panel.add(tofield)
panel.add(subjectlabel)
panel.add(subjectfield)
panel.add(messagetextarea)
panel.add(sendbutton)
panel.add(savebutton)
panel.add(infofield)
window.add(panel)
window.setResizable(True)
window.visible = True
最后我的主要是:
if __name__ == '__main__':
Window()
这是什么导致问题,我该如何解决? 谢谢。
编辑#1:问题从这一行开始,但我似乎找不到解决问题的方法。
mail = smtplib.SMTP('smtp.gmail.com', 587)
以下是完整的错误日志:http://pastebin.com/d01TT8Ge
第二个错误块可能会帮助某人弄清楚我的鳕鱼有什么问题:
janv。 13,2016 12:21:54 PM org.python.netty.util.concurrent.DefaultPromise执行 GRAVE:无法提交侦听器通知任务。事件循环关闭? java.util.concurrent.RejectedExecutionException:事件执行程序终止
编辑#2:有关我的系统的其他信息
我很遗憾无法访问另一个可以尝试运行程序的系统。如果您需要更多信息,请在评论中告诉我们!