在不同的操作系统中打包时,java.util.Logger的行为不同
我从LinuxRedhat4.3中的jar文件运行java程序,并使用eclipse从我的项目创建jar文件 如果我在linux中运行eclipse时创建jar文件,一切都正常(日志文件中的正常日志文件名和正常文本格式) 但是,如果我在WinXP下运行eclispe时创建jar(并通过ftp将其发送到我的linux服务器),则日志文件名为java0.log.0,其中的文本为XML 还有一件事-我的程序使用SimpleFormatter作为日志文件的格式化程序在不同的操作系统中打包时,java.util.Logger的行为不同,java,eclipse,logging,Java,Eclipse,Logging,我从LinuxRedhat4.3中的jar文件运行java程序,并使用eclipse从我的项目创建jar文件 如果我在linux中运行eclipse时创建jar文件,一切都正常(日志文件中的正常日志文件名和正常文本格式) 但是,如果我在WinXP下运行eclispe时创建jar(并通过ftp将其发送到我的linux服务器),则日志文件名为java0.log.0,其中的文本为XML 还有一件事-我的程序使用SimpleFormatter作为日志文件的格式化程序 有什么想法吗?默认情况下将记录为XM
有什么想法吗?默认情况下将记录为XML。因此,我想知道您是否没有正确指定日志配置的路径。因此,它可以在Linux上工作,但不能在Windows上工作。您如何“在eclipse中”创建Jar文件?您正在使用Eclipse的导出->Java->JAR文件吗?还是通过Eclipse运行ANT或Maven脚本 如果您只是直接从Eclipse导出—我建议使用ANT或Maven获得一个不与IDE绑定的可重复构建过程 如果您是从ANT或Maven构建,我会检查本地配置是否覆盖了与登录构建脚本有关的内容
也可能是应用程序或构建脚本中嵌入了特定于平台的路径,并且找不到log4j属性文件,因此log4j只是使用默认值。尽管如此,我不确定您指定的XML格式和日志文件名格式是否为默认格式。您的机器可能使用不同的JAVA编译器版本-可能在不同版本之间存在不同的默认行为。Eclipse提供了一个选项来创建Ant build.XML,您可以在初始jar创建之后使用它。