在 IntelliJ IDEA 13 中设置 Log4J

use*_*486 3 java log4j

我正在 IntelliJ IDEA 13 中构建一个简单的应用程序,但似乎不知道如何让 log4j 工作。我的应用程序是一个简单的演示,我制作它是为了确保我可以构建一些功能性的东西,它所做的就是将两个随机数相乘,并使用 apache tomcat 将其放在我可以通过浏览器访问的本地主机上。

这是类代码:

package Sample;

log4j-api-2.0.jar;
log4j-core-2.0.jar;

import org.apache.log4j.Logger;
import org.apache.log4j.LogManager;


public class HelloWorld {

    public static double getMessage() {
        return Math.random()* Math.random();

     }

    private static Logger log = LogManager.getRootLogger();

    log.debug("Debugging Message");
    log.info("Informational message");
    log.warn("Warning Message");
    System.in.read();

}
Run Code Online (Sandbox Code Playgroud)

我在导入行和 jar 文件行中收到错误“预期的类或接口”,因此我认为我没有将相应的文件放置在正确的目录中。这也导致其余的日志记录行(来自私有静态记录器... on)生成错误。

Dav*_*ton 5

1.以下内容不是有效的 Java:

log4j-api-2.0.jar;
log4j-core-2.0.jar;
Run Code Online (Sandbox Code Playgroud)

需要这些import行,例如

import org.apache.log4j.Logger;
import org.apache.log4j.LogManager;
Run Code Online (Sandbox Code Playgroud)

2.文件.jar必须与您的项目关联。

你可以:

  • 右键单击“外部库”部分并以这种方式添加它们,或者...
  • 使用 Maven 并将它们添加为项目依赖项,或者...
  • 使用一些其他依赖管理和/或构建工具,例如 Ant + Ivy、Gradle 等。

3.您需要将日志记录语句移至代码有效的位置,例如在方法中:

package sample;

import org.apache.log4j.Logger;
import org.apache.log4j.LogManager;

public class HelloWorld {
    private static final Logger log = LogManager.getRootLogger();

    public static void main(String[] args) {
        log.debug("Debugging Message");
        log.info("Informational message");
        log.warn("Warning Message");
    }    
}
Run Code Online (Sandbox Code Playgroud)