日志输出补充

Mule ESB Http项目转换为Tomcat项目(10) 关于日志问题的补充

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-27 18:51:11
在(9)中我们提到了如何让ESB项目转换为Web项目后日志信息能输出到控制台和日志文件,在继续研究中,我还发现了以下一些问题: 1. 关于jansi-64.dll的问题。 log4j2-core库引用了jansi库,jansi库用于在控制台输出彩色文字,而这个库正常使用需要jansi的本地dll文件,而这个文件包含在mule_libs/opt/jline-2.7.jar文件中,当Web项目启动时,会从这个jar文件中解压出jansi.dll文件,不必拷贝一份到Windows/Systems目录下,但是这个解压需要tomcat有一个temp目录。因此要保证log4j2能正常使用,需要在tomcat根目录下预先建立一个temp目录,jansi.dll文件解压后,会在temp目录下生成一个名为jansi-64.dll的dll文件,让每次使用log4j2时可以直接引用。 2.关于Tomcat对共享jar文件的classpath查找问题。 如果需要部署在Tomcat上的ESB项目比较多,而且这些ESB项目引用了相同的库文件时,一般我们会将这些公共的库文件拷贝到tomcat的一个公共目录下(例如shared_lib目录),这样需要部署的ESB项目war文件将会很小,便于部署和复制,但这样做也带来了一个问题,就是Tomcat的Classpath寻找问题。 Tomcat在加载一个Web项目时