当前位置: 首页 > 面试题库 >

我应该将log4j.properties文件放在哪里?

邬英武
2023-03-14
问题内容

我使用netfishs 6.7.1和glassfish v2.1编写了一个Web服务项目,将log4j.properties放入项目的根目录并使用:

static Logger logger = Logger.getLogger(MyClass.class);

在构造函数中:

PropertyConfigurator.configure("log4j.properties");

在功能上:

logger.info("...");
logger.error("...");
// ...

但是,这是错误信息(实际上,我已经尝试将它几乎可以实现的每个目录都放入):

log4j:ERROR Could not read configuration file [log4j.properties].
java.io.FileNotFoundException: log4j.properties (The system cannot find the file specified)
        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:297)
        at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:315)
        at com.corp.ors.demo.OrsDemo.main(OrisDemo.java:228)
log4j:ERROR Ignoring configuration file [log4j.properties].
log4j:WARN No appenders could be found for logger (com.corp.ors.demo.OrsDemo).
log4j:WARN Please initialize the log4j system properly.

问题答案:

我知道回答这个问题有点晚了,也许您已经找到了解决方案,但是我将发布我找到的解决方案(在我进行大量Google搜索之后),因此可能会有所帮助:

  1. 如本线程前面所述,将log4j.properties放在项目的WEB-INF \ classes下。
  2. 将log4j-xx.jar放在WEB-INF \ lib下
  3. 测试是否已加载log4j:-Dlog4j.debug在tomcat的java选项的末尾添加@


 类似资料:
  • 问题内容: 关于组织单元测试,我有两个问题。 我是否必须将测试放在与测试类相同的程序包中,或者可以在不同程序包中组织测试? 例如,如果我具有 有效性 和 其他 测试,即使它们属于同一班级,将它们分成不同的包是否正确? 模拟和存根类呢?我应该将它们与仅包含测试的软件包分开,还是放在一起? 问题答案: 我们执行JUnit测试用例的方法是将它们放在相同的包中,但放在不同的根目录中。由于我们使用Maven

  • 我正在尝试为没有它们的包装提供类型: 我在带有打字稿 2.4.2 的 webpack 中使用 ts-loader,并且在 tsconfig.json 中设置了以下类型根: 我试图模仿: < code>index.d.ts中包含以下内容: 但是错误仍然存在。我做错了什么?我应该把那些自定义的. d.ts文件放在哪里? 和任何其他类型根之间有什么区别?为什么TypeScript会区别对待它们?

  • 在Vaadin 10-14中,我应该将静态文件放在哪里,例如CSS、JavaScript和聚合模板?静态文件(如图像)如何? 此外,如何在Vaadin中导入这些文件?Vaadin 14与npm和Vaadin 10-13与bower之间有差异吗?

  • 问题内容: 在Vaadin 10-14中,应该将静态文件(例如CSS,JavaScript和Polymer模板)放在哪里?静态文件(例如图像)如何? 另外,如何在Vaadin中导入这些文件?带有npm的Vaadin 14和带有凉亭的Vaadin 10-13之间有区别吗? 问题答案: 所有路径都相对于项目根目录,例如文件在Maven项目中的位置。 使用导入的JavaScript 使用严格模式。除其他

  • 问题内容: 首先,我知道如何构建Java应用程序。但是我总是对在哪里上课感到困惑。支持以严格面向领域的方式组织软件包的支持者,其他支持者则按层分开。 我本人一直有问题 命名, 放置 所以, 您将域特定的常量放在哪里(以及此类的最佳名称是什么)? 您在哪里放置基础结构和领域特定的东西的类(例如,我有一个FileStorageStrategy类,该文件将文件存储在数据库中,或者存储在数据库中)? 在哪

  • 问题内容: 我正在一个简单的测试应用程序中尝试log4j。我在eclipse中创建一个新的Java项目,并将log4j JAR(v1.2.16)添加到我的构建路径中。然后,我创建一个简单的类来打印Hello World。然后,我使用log4j 类记录一条信息消息。当我运行该应用程序时,使用默认的附加程序和布局,我会看到日志消息。大。我遇到的麻烦是添加了自己的配置。这是我所做的: 使用自定义的附加程