【问题标题】:Java - Trying to extract url from email [duplicate]Java - 试图从电子邮件中提取 url [重复]
【发布时间】:2025-12-21 09:35:11
【问题描述】:

我正在尝试从电子邮件中提取网址。

我正在使用 selenium webdriver,我想通过测试检查电子邮件帐户以验证电子邮件是否已发送。

我设法访问了电子邮件帐户,并对其进行了一些测试,但尝试在我的自动化中使用它时失败,并出现以下异常:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataHandler
at com.sun.mail.imap.IMAPFolder.newIMAPMessage(IMAPFolder.java:1395)
at com.sun.mail.imap.MessageCache.getMessage(MessageCache.java:146)
at com.sun.mail.imap.IMAPFolder.getMessages(IMAPFolder.java:1860)
at com.YakirSaadia.Tools.EmailVerification.getUrlFromEmail(EmailVerification.java:144)
at com.YakirSaadia.Tools.EmailVerification.runTest(EmailVerification.java:45)
at com.YakirSaadia.VendorTests.RegisterNewComp.registerNewCompany(RegisterNewComp.java:55)
at com.YakirSaadia.VendorTests.RegisterNewComp.runTest(RegisterNewComp.java:26)
at com.YakirSaadia.Vendor.vendorTests(Vendor.java:36)
at com.YakirSaadia.Main.main(Main.java:34)
Caused by: java.lang.ClassNotFoundException: javax.activation.DataHandler
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 9 more

如果有人可以帮助我,那就太好了!

编辑:

找不到任何其他帖子可以回答我的问题。 我不需要发送 url 或类似的东西,我需要提取它以在我的自动化测试中使用它。

【问题讨论】:

    标签: java selenium-webdriver jakarta-mail noclassdeffounderror classnotfoundexception


    【解决方案1】:

    这意味着当您运行测试时,activation.jar 不在您的类路径中。来自 JavaMail 自述文件:

    要求

    请注意,JavaMail API 需要 JavaBeans(TM) 激活 如果您使用的是 JDK 1.5,则还要安装框架包。 从

    下载最新版本的 JavaBeans 激活框架

    http://www.oracle.com/technetwork/java/javase/index-jsp-136939.html

    并将其安装在合适的位置。

    【讨论】: