Java 禁用jasper报告的log4j日志记录

Java 禁用jasper报告的log4j日志记录,java,log4j,ireport,Java,Log4j,Ireport,我创建了一个java应用程序,其中将生成一个报告。该报告在iReports 3.7.5中提供。问题是,我的应用程序使用log4j记录错误,甚至报表也使用log4j记录错误,两者之间似乎存在某种冲突。我尝试过更改jar文件,但没有成功。 我将该报告包含在另一个不使用log4j的项目中,并且该报告正在生成中。 任何帮助都将不胜感激。 我得到的错误是 com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in yo

我创建了一个java应用程序,其中将生成一个报告。该报告在iReports 3.7.5中提供。问题是,我的应用程序使用log4j记录错误,甚至报表也使用log4j记录错误,两者之间似乎存在某种冲突。我尝试过更改jar文件,但没有成功。 我将该报告包含在另一个不使用log4j的项目中,并且该报告正在生成中。 任何帮助都将不胜感激。 我得到的错误是

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your
SQLsyntax; check the manual that corresponds to your MySQL server version for the
right syntax to use near 'isTrue': replacing [Generic bean: class 
[org.springframework.beans.factory.confi' at line 1

Aviral

您是说您的类路径上有两个版本的log4J,这会导致问题吗

如果是这样,您只需要更改其中一个包的名称。在IDE中使用自动重构工具,将log4j从com.log4j.*重命名为mylog4j.*(或任何您想要的)。显然,您需要更改log4jjar以及代码中的所有引用。同样,这可以通过重构工具自动完成

这将消除您的冲突:)

如果你真的想让他们一起工作,你可能要问log4j的人什么版本是兼容的。(更多工作)

祝你好运


有人给我一个加号:p

你说的“某种冲突”是什么意思?报告是否未生成,或者您唯一的问题是日志文件中存在错误,这似乎是有原因的。报告未生成,应用程序停止工作,上述错误被抛出netbeans。正如我所说,当我在另一个不使用log4j的应用程序中使用相同的代码调用相同的报告时,会生成报告。