zoukankan      html  css  js  c++  java
  • log4j:ERROR Could not read configuration file [log4j.properties].

    报错:

    log4j:ERROR Could not read configuration file [log4j.properties].
    java.io.FileNotFoundException: log4j.properties (系统找不到指定的文件。)
     at java.io.FileInputStream.open(Native Method)
     at java.io.FileInputStream.<init>(FileInputStream.java:106)
     at java.io.FileInputStream.<init>(FileInputStream.java:66)
     at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:306)
     at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:324)
     at snmp.GetSnmpInfo.<clinit>(GetSnmpInfo.java:32)
    log4j:ERROR Ignoring configuration file [log4j.properties].

    解决:

    方案1.将log4j.properties 这个文件从src的根目录 转移到 项目的根目录下面,即可~~~;

    方案2.可以得到src的地址,获得:

    import org.apache.log4j.Logger;
    import org.apache.log4j.PropertyConfigurator;
    
    public class Log {
        // Logger实例
        public Logger loger;
        // 将Log类封装成单实例的模式,独立于其他类。以后要用到日志的地方只要获得Log的实例就可以方便使用
        private static Log log;
    
        // 构造函数,用于初始化Logger配置需要的属性
        private Log() {
            // 获得当前目录路径
            String filePath = this.getClass().getResource("/").getPath();
            // 找到log4j.properties配置文件所在的目录(已经创建好)
            filePath = filePath.substring(1).replace("bin", "src");
            // 获得日志类loger的实例
            loger = Logger.getLogger(this.getClass());
            // loger所需的配置文件路径
            PropertyConfigurator.configure(filePath + "log4j.properties");
        }
    
        public static Log getLoger() {
            if (log != null)
                return log;
            else
                return new Log();
        }
    }

    其中:

    // 获得当前目录路径
            String filePath = this.getClass().getResource("/").getPath();
            // 找到log4j.properties配置文件所在的目录(已经创建好)
            filePath = filePath.substring(1).replace("bin", "src");
            // 获得日志类loger的实例
            loger = Logger.getLogger(this.getClass());
            // loger所需的配置文件路径
            PropertyConfigurator.configure(filePath + "log4j.properties");
    

    找到log4j.properties文件的位置。

    方案3:

    这个是个很奇怪的方案,至今没闹明白为什么就是在配置文件里的第一行加上:# MaiL或者别的注释就是别把"log4j.rootLogger  =  DEBUG,MAIL"放第一行就行。

  • 相关阅读:
    贪心——poj百炼3468:电池寿命
    贪心——部分背包
    C++编程规范
    调和级数求和
    人工神经网络
    Latex各种符号
    poj1088 滑雪,dp
    数据挖掘建模过程
    Java MyEclipse:The type java.lang.CharSequence cannot be resolved. It is indirectly referen
    Java调用阿里云短信接口发送手机验证码
  • 原文地址:https://www.cnblogs.com/tv151579/p/2868912.html
Copyright © 2011-2022 走看看