我在我的项目中有以下jars:
antlr.jar commons.collections-3.2.1.jar dom4j-1.6.jar hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.0.1.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar javassist-3.12.1.GA.jar jboss-logging.3.1.0.cr2.jar jboss-transaction-api_1.1_spec-1.0.0.Final.jar log4j-1.2.16.jar slf4j-api-1.6.4.jar slf4j-log4j12-1.6.4.jar
出现异常的代码:
ClassLoader loader = Thread.currentThread().getContextClassLoader(); URL url = loader.getResource("log4j.properties"); System.out.println(url); PropertyConfigurator.configure(url);
System.out.println(url)为:
file:/D:/me/HibernateProject/build/classes/log4j.properties,并且文件存在,并且浏览器可以浏览该文件。
包含以下内容的log4j.properties文件:
http://www.javatpoint.com/hibernate-logging-by-log4j-using-properties-file
例外:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/PropertyConfigurator at com.pkm.commands.UpdateUser.doWork(UpdateUser.java:29) at com.pkm.commands.UpdateUser.main(UpdateUser.java:15) Caused by: java.lang.ClassNotFoundException: org.apache.log4j.PropertyConfigurator at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 2 more Java Result: 1
发布于 2014-05-09 18:26:27
如果类路径存在问题,则通常会出现此错误。可能运行时类路径中不存在所需的jar。
发布于 2015-02-04 11:55:08
您应该配置您的java构建路径,以确保log4j.jar文件在顺序和导出列表中!
https://stackoverflow.com/questions/23562145
复制相似问题