如何恢复此错误:log4j:WARN找不到记录器的附加程序(net.sf.jasperreports.extensions.ExtensionsEnvironment)

2019年2月26日 18点热度 0条评论

我尝试使用ireport进行报告,但出现此问题:

log4j:WARN No appenders could be found for logger(net.sf.jasperreports.extensions.ExtensionsEnvironment).
log4j:WARN Please initialize the log4j system properly.

My source:

private URL[] reports = new URL[]{
        getClass().getResource("/Laporan/LapGuru.Jasper"),
        getClass().getResource("/Laporan/LapGuruByNIP.Jasper"),};
        private URL urlCurrent;

    try{           

            Map parameter = new HashMap();

            parameter.put("nip",this.txtNIP.getText());
            InputStream os = null;
            os = urlCurrent.openStream();
            JasperReport jReport = (JasperReport)JRLoader.loadObject(os);
            JasperPrint jPrint = JasperFillManager.fillReport(jReport, parameter, ClassDB.getkoneksi());
            JRViewer viewer = new JRViewer(jPrint);
            viewer.setOpaque(true);
            viewer.setVisible(true);
            jScrollPane1.add(viewer);
            jScrollPane1.setViewportView(viewer);

            } catch (Exception ex)
            {
                System.out.println(ex);
            }

解决方案如下:

确保您的类路径中有log4j.properties文件。
如果要命名,还可以使用其他选项来配置log4j,但是要在启动Java时将System属性添加到命令行,例如:

-Dlog4j.configuration=file:///path/to/your/log4j.properties

见链接
http://logging.apache.org/log4j/1.2/manual.html#defaultInit