1.hibernate3.jar、commons-beanutils-1.7.0.jar、commons-collections-3.2.jar、commons-lang-2.3.jar、commons-logging-1.0.4.jar、dom4j-1.6.1.jar、antlr-2.7.6.jar 、ezmorph-1.0.3.jar(EZMorph是一个简单的java类库用于将一种对象转换成另外一种对象。EZMorph原先是Json-lib项目中的转换器。EZMorph支持原始数据类型(Primitive),对象(Object),多维护数组转换与DynaBeans的转换。兼容JDK1.3.1,整个类库大小只有76K左右。)、jta-1.1.jar、javassist-3.4.GA.jar、slf4j-api-1.6.0.jar
2.dom4j.jar
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar 包,Hibernate用它来读写配置文件。
3.odmg.jar
ODMG是一个ORM的规范,Hibernate实现了ODMG规范,这是一个核心的库,必须使用的jar包。
4.cglib-full.jar
CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包
5.commons-collections.jar:
Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。
6.commons-beanutils.jar:
Apache Commons包中的一个,包含了一些Bean工具类类。必须使用的jar包。这个包提供了易用的java反射
7.commons-lang.jar
Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。
8.commons-logging.jar
Apache Commons包中的一个,包含了日志功能,必须使用的jar包。
9.c3p.jar
C3P是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就需要这个jar包。
10.proxool.jar
也是一个连接池,同上。
11.commons-pool.jar, commons-dbcp.jar
DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。
12.实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池,选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。
13.connector.jar:
JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际上一般App Server肯定会带上这个包,所以实际上是多余的包。
14.jaas.jar
JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。
15.jcs-1.0-dev.jar
如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。
16.jdbc2_0-stdext.jar:
JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的。
17.jta.jar:
JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。
18.xalan-2.4.0.jar, xerces-2.4.0.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取配置文件,性能没什么紧要的,所以也是多余的。
19.java.lang.NoClassDefFoundError: javassist/util/proxy/MethodFilter
缺少javassist-3.4.GA.jar
20.java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
缺少slf4j-nop-1.6.0.jar
21.java.lang.NoClassDefFoundError: javax/transaction/Synchronization
缺少jta.jar
22.Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException
缺少antlr-2.7.6.jar
2.dom4j.jar
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar 包,Hibernate用它来读写配置文件。
3.odmg.jar
ODMG是一个ORM的规范,Hibernate实现了ODMG规范,这是一个核心的库,必须使用的jar包。
4.cglib-full.jar
CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包
5.commons-collections.jar:
Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。
6.commons-beanutils.jar:
Apache Commons包中的一个,包含了一些Bean工具类类。必须使用的jar包。这个包提供了易用的java反射
7.commons-lang.jar
Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。
8.commons-logging.jar
Apache Commons包中的一个,包含了日志功能,必须使用的jar包。
9.c3p.jar
C3P是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就需要这个jar包。
10.proxool.jar
也是一个连接池,同上。
11.commons-pool.jar, commons-dbcp.jar
DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。
12.实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池,选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。
13.connector.jar:
JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际上一般App Server肯定会带上这个包,所以实际上是多余的包。
14.jaas.jar
JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。
15.jcs-1.0-dev.jar
如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。
16.jdbc2_0-stdext.jar:
JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的。
17.jta.jar:
JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。
18.xalan-2.4.0.jar, xerces-2.4.0.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取配置文件,性能没什么紧要的,所以也是多余的。
19.java.lang.NoClassDefFoundError: javassist/util/proxy/MethodFilter
缺少javassist-3.4.GA.jar
20.java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
缺少slf4j-nop-1.6.0.jar
21.java.lang.NoClassDefFoundError: javax/transaction/Synchronization
缺少jta.jar
22.Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException
缺少antlr-2.7.6.jar