错误:java.lang.NoSuchMethodError:org / springframework / asm / ClassVisitor。<init>(I)V

时间:2016-03-01 16:37:28

标签: java spring maven spring-aop cglib

我在POM中有这两个依赖项,我认为创建此问题,但我尝试了许多不同的方法和更新版本,但没有任何对我有用。有人可以请帮助。 的pom.xml

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>4.2.0.RELEASE</version>
    </dependency>

     <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>2.2</version>
    </dependency>      

enter image description here

1 个答案:

答案 0 :(得分:1)

您的问题的解决方案

  1. 管理依赖项时似乎存在JAR冲突。
  2. 在Spring 4.2.0中,ClassVisitor类已包含在Spring-core-4.2.0.RELEASE.jar中,请找到下图。因此,不需要包含我在依赖项中找到的spring-asm-3.1.3.RELEASE.jar。 ClassVisitor
  3. 当您使用Spring 3.2.X及以上版本时,始终建议使用Bill of Materials
  4. 请从依赖项中删除 CGLIB代理,因为当您使用Spring 3.2.X version及更高版本时不再需要它。请参阅spring-framework文档。
  5. 最后你的POM应如下所示。谦虚地请求你忽略hibernate和slf4j依赖。

                                                <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
                                              <modelVersion>4.0.0</modelVersion>
                                              <groupId>org.springframework.samples</groupId>
                                              <artifactId>simpleSpring</artifactId>
                                              <version>0.0.1-SNAPSHOT</version>
    
                                              <properties>
    
                                                    <!-- Generic properties -->
                                                    <java.version>1.8</java.version>
                                                    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                                                    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    
                                                    <!-- Spring -->
                                                    <spring-framework.version>4.2.0.RELEASE</spring-framework.version>
    
                                                    <!-- Hibernate / JPA -->
                                                    <hibernate.version>4.2.1.Final</hibernate.version>
    
                                                    <!-- Logging -->
                                                    <logback.version>1.0.13</logback.version>
                                                    <slf4j.version>1.7.5</slf4j.version>
    
                                                    <!-- Test -->
                                                    <junit.version>4.11</junit.version>
    
                                                </properties>
                                                <dependencies>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-aop</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-aspects</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-beans</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-context</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-context-support</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-core</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-expression</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-instrument</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-instrument-tomcat</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-jdbc</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-jms</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-messaging</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-orm</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-oxm</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-test</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-tx</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-web</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-webmvc</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-webmvc-portlet</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
                                                  <dependency>
                                                    <groupId>org.springframework</groupId>
                                                    <artifactId>spring-websocket</artifactId>
                                                    <version>4.2.0.RELEASE</version>
                                                  </dependency>
    
    
                                                    <!-- Spring and Transactions -->
                                                    <dependency>
                                                        <groupId>org.springframework</groupId>
                                                        <artifactId>spring-context</artifactId>
                                                        <version>${spring-framework.version}</version>
                                                    </dependency>
                                                    <dependency>
                                                        <groupId>org.springframework</groupId>
                                                        <artifactId>spring-tx</artifactId>
                                                        <version>${spring-framework.version}</version>
                                                    </dependency>
    
                                                    <!-- Logging with SLF4J & LogBack -->
                                                    <dependency>
                                                        <groupId>org.slf4j</groupId>
                                                        <artifactId>slf4j-api</artifactId>
                                                        <version>${slf4j.version}</version>
                                                        <scope>compile</scope>
                                                    </dependency>
                                                    <dependency>
                                                        <groupId>ch.qos.logback</groupId>
                                                        <artifactId>logback-classic</artifactId>
                                                        <version>${logback.version}</version>
                                                        <scope>runtime</scope>
                                                    </dependency>
    
                                                    <!-- Hibernate -->
                                                    <dependency>
                                                        <groupId>org.hibernate</groupId>
                                                        <artifactId>hibernate-entitymanager</artifactId>
                                                        <version>${hibernate.version}</version>
                                                    </dependency>
    
    
                                                    <!-- Test Artifacts -->
                                                    <dependency>
                                                        <groupId>org.springframework</groupId>
                                                        <artifactId>spring-test</artifactId>
                                                        <version>${spring-framework.version}</version>
                                                        <scope>test</scope>
                                                    </dependency>
                                                    <dependency>
                                                        <groupId>junit</groupId>
                                                        <artifactId>junit</artifactId>
                                                        <version>${junit.version}</version>
                                                        <scope>test</scope>
                                                    </dependency>
    
                                                </dependencies> 
                                            </project>