您的位置:首页 > 编程语言 > Java开发

Spring学习8- SSH需要的jar包

2014-12-25 18:35 323 查看
struts2

commons-logging-1.0.4.jar 主要用于日志处理

freemarker-2.3.8.jar 模板相关操作需要包

ognl-2.6.11.jar ognl表达示所需包,

xwork-2.0.7.jar xwork核心包

struts2-core-2.0.14.jar struts2核心包

struts2-spring-plugin-2.0.14.jar struts2整合spring所需要的包

如果还需要整合其它框架或者插件,再导入其它的包

hibernate

Hibernate3.jar hibernate核心包

antlr-2.7.6.jar 一个语言转换工具

Hibernate利用它实现 HQL 到 SQL 的转换模板相关操作需要包

commons-collections-3.1.jar collections Apache 的工具集

javassist-3.9.0.GA.jar 代码生成工具,

Hibernate用它在运行时扩展 Java类和实现,同cglib包

dom4j-1.6.1.jar dom4j XML 解析器

jta-1.1.jar 标准的 JAVA 事务处理接口

slf4j-api-1.5.8.jar和slf4j-log4j12-1.5.0.jar hibernate使用的一个日志系统

cglib.jar CGLIB 字节码解释器

asm.jar ASM字节码库 如果使用“cglib”则必要

asm-attrs.jar ASM字节码库 如果使用“cglib”则必要

如果想使用缓存需要加入:ehcache.jar EHCache缓存

连接数据库加入相关包....

spring

spring-beans.jar 访问配置文件、创建和管理bean 以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类

spring-context.jar 可以找到使用Spring ApplicationContext特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类

spring-core.jar Spring 框架基本的核心工具类

spring-jdbc.jar 包含对Spring 对JDBC 数据访问进行封装的所有类

spring-orm.jar 对映射框架的一些支持

spring-tx.jar 提供对事务的支持

如果还需要AOP的支持,还要加上aspectjrt.jar和aspectjweaver.jar

其它可选包:

commons-beanutils-1.6.jar

commons-dbcp-1.2.2.jar

commons-pool-1.4.jar

commons-fileupload-1.2.1.jar

commons-io-1.4.jar

最后还要加上log4j.jar

资料一:

在SSH整合的项目中出现NotFoundException: org.objectweb.asm.codevisitor的错误时,原因主要可能有以下几点:

在使用Spring的AOP编程时,会用到这几个lib:

asm-2.2.2.jar

asm-commons-2.2.2.jar

asm-util-2.2.2.jar

Hibernate使用如下lib:

asm.jar

asm-attrs.jar

其中asm-2.2.2.jar与asm.jar存在类上的冲突!!!

使用其中之一或两者都使用,可能会出现如下错误:

java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor

java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor

java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit。。。。。。

解决办法是:

1.去掉类路径上的关于Hibernate的3个lib

asm.jar

asm-attrs.jar

cglib-2.1.3.jar

2.加入Spring中的以下4个lib

asm-2.2.2.jar

asm-commons-2.2.2.jar

asm-util-2.2.2.jar

cglib-nodep-2.1_3.jar

另外需要的注意的是,在使用MyEclipse编程时,有时候jar包从classpath中移除之后会放在WEB-INF\lib下,此时确定将WEB-INF\lib下的jar文件删除才行。

资料二:

报如如下下错误/异常:

Java代码

Invocation of init method failed; nested
exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V

Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V

导致原因:

在使用spring的Aop进行编程时,需要用到asm*.jar,而Hibernate也需要用到asm相关的jar文件,如果在一个工程的构建路径中存在两个asm*.jar,那么这两个jar中的类就会存在冲突,从而导致该问题的产生。

解决:经过网上多翻查找得到多个解决办法,后终于总结出 3 种解决之道:

检查lib下面关于asm的包,分别有如下几个JAR包:

asm-2.2.3.jar

asm.jar

asm-attrs.jar

asm-commons-2.2.3.jar

asm-util-2.2.3.jar

第一种方法↓

-->删除 asm-2.2.3.jar 重启应用服务器 OK! ...

第二种方法↓

-->从网上下一个最新的asm-all-3.0.jar的jar包,然后把原来的关于Hibernate的所有asm开头的jar包全部删掉,还有一个cglib-2.1.3.jar也删掉.

重新部署工程,OK! ...

第三种方法↓

-->去掉类路径上的关于Hibernate的3个lib

asm.jar

asm-attrs.jar

cglib-2.1.3.jar

再加入Spring中的以下4个lib

asm-2.2.2.jar

asm-commons-2.2.2.jar

asm-util-2.2.2.jar

cglib-nodep-2.1_3.jar

OK!
...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: