自 8 月 29 日更新以来,更新程序结束时会显示一条消息 log4cxx:找不到用于 logger 的附加程序。MikTeX 仍可正常运行,但通常在更新过程结束时发生的字体缓存似乎被跳过了。
这发生在四台不同的机器上,运行 Windows 10 和 7。几个月前我从 Miktex 网站安装了它。在更新过程结束时,出现以下内容:
Copying C:\Users\mrenardy\AppData\Local\MiKTeX\2.9\pdftex\config\pdftex_dl14.map
to C:\Users\mrenardy\AppData\Local\MiKTeX\2.9\pdftex\config\pdftex.map...
log4cxx: No appender could be found for logger (mkfntmap).
log4cxx: Please initialize the log4cxx system properly.
Creating language.dat, language.dat.lua and language.def...
我在所有机器上都安装了 Comodo 防火墙。
其中一个有 Comodo AV,其他的有 Symantec。
我没有提交错误报告,但已将其通过电子邮件发送给 Christian Schenk。
我从网上得知其他人也看到了同样的消息。尽管出现了错误消息,但 Miktex 到目前为止对我来说运行正常。我注意到,在更新过程中,数百行字体正在缓存或现有缓存有效的信息不再出现。作为一个愚蠢的用户,我无法判断字体是否未被缓存或只是没有创建消息。
答案1
我在 Win7 Enterprise-MikTeX2.9 上收到了同样的消息。不过一切似乎都正常,我希望这是开发人员调试遗留的问题。此网站 https://dilawarnotes.wordpress.com/2013/02/01/log4cxx-no-appender-could-be-found-for-logger-somelogger/和其他人给我的印象是这样的,但我不是专家用户。我尝试了他们的建议,但当然,只是得到“无需更新”。
我必须在 LyX 中执行标准,然后一切都从崩溃恢复正常 :-)(重新配置特定于 LyX 以建立正确的后端 LaTeX 设置)。
答案2
如果有人偶然发现了这一点,并且建议的提示不起作用,这可能会对你有所帮助:
在我的工作机器上,我只能使用特殊的高级账户安装软件,而我通常使用基本用户账户登录。结果是,当我使用提升权限安装 MikTeX 时,我也获得了
log4cxx: No appender could be found for logger (xxx).
log4cxx: Please initialize the log4cxx system properly.
消息。经过一些测试和分析,我发现错误是由 MikTeX 组件无法看到提升用户主目录中的依赖项引起的。所以我所做的只是用我的基础级别帐户重新安装 MikTeX,因为它不需要任何注册表访问权限或类似的仅限管理员的组件。然后将依赖项放在可读目录中。
也许这可以帮助那些在公司机器上使用 MikTeX 的人。:-)
答案3
我不知道它为什么会起作用,但我已经经历过两次了,所以我想分享一下。即使我cmd
以管理员权限启动(Win10,管理员帐户),MiKTeX 也会抛出此错误,我似乎无法对此采取任何措施。但是,如果我启动新的 MiKTeX 控制台,进入管理员模式,然后使用控制台左下角的图标启动命令行,我就可以输入mpm
命令而不会抱怨。
为了完整性:具体来说,我在这种情况下运行的命令是
mpm --admin --verbose --require=@filename
其中
mpm
启动 MiKTeX 包管理器...
--admin
... 处于管理员模式...
--verbose
...并展示它正在做什么(我喜欢观看)。
--require=
类似于--install=
,但会检查命令后面的包是否已安装。如果已安装,则将跳过该包
@filename
:我没有使用软件包名称或软件包列表,而是在文本文件中列出了软件包。@filename
将此列表传递给mpm
。这是一种非常方便的方法来准确安装您需要的软件包。