2014-02-14 3 views
4

나는 봄의 간단한 응용 프로그램을 구축하기 위해 노력하고있어를 던져 내 단일 컨트롤러봄의 시작은 예외

package User; 

import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 

/** 
* Created by Bula on 14/02/14. 
*/ 
@Controller 
public class UsersController { 

    @RequestMapping("/user") 
    public String index() 
    { 
     return "user_index"; 
    } 

} 
다음

Main.java입니다에 대해 다음 코드가 있습니다. 모든 부팅 한 :

package main; 

import javafx.application.Application; 
import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.context.annotation.ComponentScan; 


@ComponentScan 
@EnableAutoConfiguration 
public class Main { 

    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

은 또한이 내가 따라서 모든 라이브러리가 기술적으로이 있어야 받는다는를 업데이트 한 pom.xml 파일

<?xml version="1.0" encoding="UTF-8"?> 
<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>blog</groupId> 
    <artifactId>blog</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring</artifactId> 
      <version>2.5.6</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>4.0.0.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-autoconfigure</artifactId> 
      <version>1.0.0.BUILD-SNAPSHOT</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot</artifactId> 
      <version>1.0.0.BUILD-SNAPSHOT</version> 
     </dependency> 
    </dependencies> 


</project> 

입니다.

Exception in thread "main" java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationAwareOrderComparator.sort(Ljava/util/List;)V 
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:371) 
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:343) 
    at org.springframework.boot.SpringApplication.initialize(SpringApplication.java:221) 
    at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:197) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:877) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:866) 
    at main.Main.main(Main.java:14) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) 

Process finished with exit code 1 

내 user_index.html 그러나 존재 나는 오류가 하나에 생각하지 않습니다 : 여기에 슬로우됩니다 오류가 (내가 그것을 인터넷 검색을 시도하지만 아무것도 내가 직면 무엇에 대한 가까이 들어온 나타났다 없음)입니다 html 태그 만 가지고 있기 때문에 친절하게 링크되어 있습니다. 여기에 내가 가지고있는 모든 라이브러리가있는 이미지가 있습니다 : enter image description here

답변

5

그래서 저는 pom에서 Eclipse에서 maven 프로젝트를 만들었습니다. 내가 발견 한 것은 org.springframework.core.annotation.AnnotationAwareOrderComparator를 두 개의 jar 파일로 가져 오는 것입니다. 2.5.2 스프링 용기와 4.0. 2.5.2 항아리를 제거하십시오. 그건 늙었 어. 새로운 jar는 새로운 코드가 호출하는 메소드와 동일한 클래스를가집니다.

핵심 사항은 핵심 항아리를 두 번로드한다는 것입니다.

+0

와우. 감사. 나는 inteliJ가 나에게 이런 종류의 트릭을 할 것을 기대하지 않았다. 감사합니다. – Bula

+0

은 엄청난 시간을 절약했습니다. 고마워. –