为什么我的Log4j代码不能在这里工作?

时间:2015-04-16 03:38:28

标签: java log4j

我在运行log4j代码时遇到问题,我认为这是一个配置问题;这是我如何运行它:

C:\Users\Adel\JavaCoding>javac -cp  C:\apache_log4j_beta5\apache-log4j-2.0-beta5
-bin\log4j-api-2.0-beta5.jar;C:\apache_log4j_beta5\apache-log4j-2.0-beta5-bin\log4j-core-2.0-beta5.jar;. HelloWorldLog4J.java

但是我收到了这个错误:

  

C:\ Users \ Adel \ JavaCoding> java HelloWorldLog4J线程中的异常   “main”java.lang.NoClassDefFoundError:org / apache / logging / lo   G4J /日志管理           在HelloWorldLog4J。(HelloWorldLog4J.java:11)​​引起:java.lang.ClassNotFoundException:   org.apache.logging.log4j.LogManager

    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 1 more
     

C:\用户\阿德尔\ JavaCoding>

1 个答案:

答案 0 :(得分:0)

正如用户ipohfly(谢谢!!!)所说,我必须使用java命令和-cp参数,如下所示:

C:\Users\Adel\JavaCoding>java -cp  C:\apache_log4j_beta5\apache-log4j-2.0-beta5-
bin\log4j-api-2.0-beta5.jar;C:\apache_log4j_beta5\apache-log4j-2.0-beta5-bin\log
4j-core-2.0-beta5.jar;. HelloWorldLog4J

这产生了所需的输出:

  

pre_loggerDOTinfo

     

22:51:33.973 [main]致命的HelloWorld - 你好,这是致命的   消息22:51:33.997 [主要]致命的HelloWorld - 您好,这是致命的   消息也是,#2

     

22:51:33.997 [main]致命的HelloWorld - 您好,这是致命的   消息另外,#3

     

22:51:33.997 [main]致命的HelloWorld - 您好,这是致命的   消息也是,#4

     

post_loggerDOTinfo

     

C:\用户\阿德尔\ JavaCoding>