大家好啊
小弟有一个紧急的问题,非web应用,单机程序
我把commons-logging.jar,commons-collections.jar,log4j.jar都放到了eclipse工程的lib目录里
启动类如下:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;public class EntryClass {
protected static final Log logger = LogFactory.getLog(Entry.class);
public static void main(String[] args) {
logger.info("in entry method");
}
}在eclipse里运行一切正常,
但是当我打完jar包后,运行时总提示Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory错误
即使在classpath中设置了以上3个jar包的绝对路经后依然提示相同的错误,
如何才能让jar包找到正确的lib阿?
小弟有一个紧急的问题,非web应用,单机程序
我把commons-logging.jar,commons-collections.jar,log4j.jar都放到了eclipse工程的lib目录里
启动类如下:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;public class EntryClass {
protected static final Log logger = LogFactory.getLog(Entry.class);
public static void main(String[] args) {
logger.info("in entry method");
}
}在eclipse里运行一切正常,
但是当我打完jar包后,运行时总提示Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory错误
即使在classpath中设置了以上3个jar包的绝对路经后依然提示相同的错误,
如何才能让jar包找到正确的lib阿?
放到你的jar包里的lib文件夹下,然后在Manifest.mf中加上
Class-Path: lib/commons-logging.jar lib/commons-collections.jar lib/log4j.jar
即原来的jar里面多了一个lib文件夹下面有3个用到的jar
里加下面的
Class-Path: lib/commons-logging.jar lib/commons-collections.jar lib/log4j.jar (这有个空格)
Main-Class: EntryClass这后边加两个回车
另外,把那些jar包拷贝到tomcat/common/lib下也是个解决办法
Class-Path: 所要加载的包路径,注意空格
Main-Class:主程序的名字,不需要后缀
看下不就完了么
看看到底有没有common 的class
没有手动加进去 根本解决应该是你eclipse 的配置问题