`

解决log4j读取log4j.xml (系统找不到指定的路径。)的问题

阅读更多

log4j:ERROR Could not parse file [sr/com/dk/logtest/log4j.xml].
java.io.FileNotFoundException: F:\MyEclipseBHInformationSystemJavaDevelopWorkSpace\JDKLogTest\sr\com\dk\logtest\log4j.xml (系统找不到指定的路径。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source)

 

 

这个问题比较纠结,但是很明显是路径读取不对的问题而导致异常的出现。

我们看一看我们的源码怎么写的:

贴上来方法:

public static void logTest() {
// DOMConfigurator读取配置文件
DOMConfigurator.configure("/com/dk/logtest/log4j.xml");
for (int i = 0; i < 100; i++) {
for (int j = 0; j < 100; j++) {

if(log.isInfoEnabled()){//如果info可用
log.info("开始计算(i="+i+") * (j="+j+")次运算.");//连接字符串输出

}
}

}
}

 

这个路径觉得错误 ,我们该怎么办,前面添加src 现在路径改为:

DOMConfigurator.configure("src/com/dk/logtest/log4j.xml");

 

OK!解决。就这么简单。

 

值得一提的是,网上很多解决方法实在是太烂了。竟然还让我写个servlet 然后在获取本地路径 。让我走了不少弯路的。唉。无言。

 

 

分享到:
评论
1 楼 malson 2011-12-06  
感谢,解决了

相关推荐

    Log4j中相对路径的问题

    Log4j是一个广泛使用的...总结来说,Log4j中的相对路径问题可以通过系统属性、环境变量或动态配置来解决,确保日志文件能够在不同环境中被正确写入。这样的灵活性使得开发者无需频繁修改配置,提高了代码的可移植性。

    Log4j 相对路径配置

    4. `&lt;listener&gt;`标签引入了`org.springframework.web.util.Log4jConfigListener`监听器,这个监听器会在Web应用启动时读取`log4jConfigLocation`指定的配置文件,并初始化Log4j。 接下来,我们来看`log4j....

    tomcat下的log4j日志配置

    2. **配置全局 Log4j 属性文件**:在任意位置创建 `log4j.properties` 文件,并设置全局的日志级别、输出格式及存储路径等。通常会将该文件放置在 Tomcat 的 `conf` 目录下。 ```properties log4j.rootLogger=...

    log4j详细配置说明

    其中 `&lt;init-param&gt;` 用于指定配置文件路径,例如 `/WEB-INF/log4j.properties`。 ##### 2. 自定义 Log4j 初始化类 为了确保 Log4j 能够正确初始化并读取配置文件,需要创建一个名为 `Log4jInit` 的 Servlet 类。...

    log4j输出多个自定义路径的日志文件小例子

    要实现输出多个自定义路径的日志文件,我们需要在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中定义多个Appender。Appender是Log4j中负责将日志信息输出到指定目的地的组件,例如文件、控制台、网络...

    0积分:完全相对路径的log4j配置

    例如,在配置文件中指定的日志文件路径`log4j.appender.logfile.File=set up in web.xml`,这里的“set up in web.xml”实际上是指在`web.xml`中指定的日志文件路径,而这个路径也是相对于项目的根目录。 #### 总结...

    slf4j-log4j12-1.6.6.jar

    在使用`slf4j-log4j12-1.6.6.jar`时,开发者首先会通过SLF4J API在代码中记录日志,然后在运行环境中通过配置文件(如log4j.properties或log4j.xml)指定日志输出的策略。例如,开发者可以设置日志级别,控制哪些...

    tomcat日志log4j配置的jar

    创建一个`log4j.properties`或`log4j.xml`配置文件,指定日志级别、输出格式、日志文件位置等。以下是一个简单的`log4j.properties`示例: ```properties # log4j.properties log4j.rootLogger=INFO, FILE, CONSOLE...

    读写Excel jxl.jar 读xml (log4j 文件上传下载笔记).rar

    这篇文档将深入探讨Java中如何使用jxl.jar库进行Excel文件的读写操作,解析XML文件,以及关于log4j的日志记录系统和文件的上传下载笔记。在现代的IT环境中,这些技能对于数据处理、日志管理和系统交互至关重要。 ...

    tomcat下struts2的log4j日志配置.doc

    这样,当Tomcat服务器启动时,会自动读取并应用指定的Log4j配置,从而为整个应用提供日志服务。 在Struts2框架中,由于它集成了Log4j,你可以通过配置Struts2的配置文件(如`struts.xml`)来进一步控制日志行为,...

    MANIFEST.MF的应用以及如何读取jar包外的log4j.properties

    Log4j是一个强大的日志处理库,它允许开发者通过配置文件(如log4j.properties或log4j.xml)来定制日志记录级别、输出格式和目的地。通常,开发者不希望将日志配置文件打包到JAR中,因为这样可以方便地在生产环境中...

    log4j-1.2.13-src

    4. **配置器**: 配置文件(如log4j.properties或log4j.xml)使用了基于XML或Properties的配置方式,体现了配置器模式,使得日志配置灵活可变。 四、源码解析 在log4j-1.2.13源码中,我们可以看到以下几个关键部分...

    log4j-core-2.7.zip

    综上所述,"log4j-core-2.7.zip"的引入是为了解决Struts2框架的日志需求,而`log4j2.xml`的配置则让日志行为更具针对性。在实际项目中,理解并熟练运用Log4j2的配置和功能,对于优化开发流程和问题排查至关重要。

    Spring的log4j以及配置文件

    在Java开发领域,Spring框架是不可或缺的一部分,它提供了一个全面的编程和配置模型...通过合理配置`log4j.properties`文件,开发者可以有效地监控系统状态,及时发现并解决问题,同时避免过多的日志输出影响系统性能。

    log4j-1.2.15-apidocs.rar

    6. **org.apache.log4j.PropertyConfigurator**:用于从属性文件中读取配置并初始化Log4j。 五、实际应用与最佳实践 在实际项目中,合理使用Log4j可以帮助调试、监控和分析程序运行状态。以下是一些最佳实践: 1....

    log4j 源码包 日志包 2.11.0

    日志级别管理是Log4j的核心功能之一,通过设置不同的级别,可以在不影响程序运行的情况下,灵活控制日志的输出级别,平衡信息的详细程度和性能。 通过对Log4j 2.11.0源码的深入研究,开发者不仅可以掌握其基本用法...

    Log4j日志配置说明,Log4j日志配置说明

    这个 Servlet 的作用是在应用启动时读取配置文件并初始化 Log4j。具体步骤如下: ```java package ttzl.log.web; import javax.servlet.http.HttpServlet; import org.apache.log4j.PropertyConfigurator; public...

    mybatis整合log4j

    为了解决这个问题,我们需要引入一个桥接包来桥接SLF4J和Log4j: 1. 创建配置文件:与之前一样,放置`log4j.xml`或`log4j.properties`在SRC目录下。 2. 添加依赖:除了`log4j-1.2.15.jar`之外,还需要添加`slf4j-...

    JBOSS log4j 配置

    通常,我们都提供一个名为 log4j.properties 的文件,在第一次调用到 Log4J 时,Log4J 会在类路径中定位这个文件,并读入这个文件完成的配置。 Log4j 有三个主要的组件:Loggers(记录器),Appenders(输出源)和 ...

Global site tag (gtag.js) - Google Analytics