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

Chr*_*non 4 java email log4j jakarta-mail

我在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)
Run Code Online (Sandbox Code Playgroud)

有没有人遇到过这个?我也包含了所需的mail.jar库.

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

Ste*_*n C 5

我查看了源代码,NetProperties错误基本上就是它所说的内容.未设置名为"java.home"的System属性.根据javadoc for System.getProperties(),该属性由JVM自动设置为java安装目录.

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