当前位置: 首页 > 面试题库 >

Log4j电子邮件错误“找不到java.home?”

姜楷
2023-03-14
问题内容

我在J2SE下使用log4j。我已将其配置为对某种类型的日志事件使用邮件程序。当logger.error触发时,出现以下异常:

java.lang.Error: Can't find java.home ??
at sun.net.NetProperties.loadDefaultProperties(NetProperties.java:45)
...
at org.apache.log4j.net.SMTPAppender.sendBuffer(SMTPAppender.java:416)

有人遇到过吗?我也包括所需的mail.jar库。

任何帮助表示赞赏。谢谢克里斯


问题答案:

我查看了的源代码,NetProperties该错误基本上表示了它的意思。未设置名为“ java.home”的系统属性。根据for的javadoc
System.getProperties(),该属性由JVM自动设置为java安装目录。

我能想到的唯一解释是,您的应用程序或正在使用的某些第三方库中的某些内容已显式取消设置该属性。这显然是一件坏事…



 类似资料:
  • 我正在使用Laravel,我想使用PHP邮件功能。我已经尝试过了: 但没有电子邮件获取发送至少我不接收它检查垃圾邮件文件夹,它不在那里,我不接收任何错误消息时,执行此代码。 php邮件函数用来发送邮件的是什么?也许我错过了什么? 此外,我没有运行这个地方,我有它上传到我的VPS运行Ubuntu 16.04。1 LTS

  • 在过去的四个月里,我一直在做一个项目,我对拉拉维尔现在面临的情况非常生气。它不是发送电子邮件;我设置它使用邮件驱动程序并输入正确的代码,但它似乎根本不起作用。除了不工作,它甚至没有给我一个错误! 以下是我的配置: 以下是我发送电子邮件的PHP代码:

  • 给出以下代码片段: 当我在Eclipse中执行这段代码时,我收到一封电子邮件,如: 这就是我想要的! 但后来,我尝试在部署在Jboss-4.0.5中的应用程序中使用这个主应用程序,我收到了这样一封电子邮件: 因此,不仅消息不是html消息,而且电子邮件的主题也丢失了,而且似乎没有使用收件人发送电子邮件,而是使用密件抄送<我不知道这种行为的原因是什么,有没有人可以帮助我,或者只是给我一些提示。 更新

  • 这是我的代码,我使用Firebase注册用户,并使用用户名而不是电子邮件进行登录/注册。 我搜索了很多,但没有找到解决方案。任何关于这种方法的帮助都将不胜感激。

  • 我编写了一个Java应用程序,通过LDAP搜索Active directory以获取用户信息。我有一个传入的自定义Person类实例列表。在它我有DN或电子邮件定义。我正在相应地修改搜索条件。代码如下: 代码工作时没有错误,但当指定DN时,它确实找到了一个人,但当定义email时,它什么也找不到。但是,如果复制生成的筛选器字符串并将其以以下形式传递给ldapsearch命令: ldapsearch

  • 单击联系人表单中的“发送”按钮时出错。我使用的是Laravel 5.4。请帮我解决这个错误。 我已经清除了缓存,但仍然得到这个错误 预期响应代码250,但得到代码“530”,消息“530-5.5.1需要身份验证 这是我的邮件功能... 这是我的邮件。php文件