2015-01-06 3 views
0

저는 Spring Cloud 스냅 샷 빌드를 사용하기 전에 작동했던 프로젝트를 빌드하고 있습니다. Zuul 서버를 제외한 모든 것이 작동하는 것 같습니다. 나는 다음과 같은 예외를 받고 있어요 :줄 서버 스냅 샷이 깨졌을 수 있습니까?

Caused by: javax.validation.ValidationException: Unable to instantiate Configuration. 
    at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:279) 
    at org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.afterPropertiesSet(LocalValidatorFactoryBean.java:223) 
    at org.springframework.boot.context.properties.ConfigurationPropertiesBindingPostProcessor$Jsr303ValidatorFactory.run(ConfigurationPropertiesBindingPostProcessor.java:361) 
    at org.springframework.boot.context.properties.ConfigurationPropertiesBindingPostProcessor.afterPropertiesSet(ConfigurationPropertiesBindingPostProcessor.java:174) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1625) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1562) 
    ... 28 more 
Caused by: javax.validation.ValidationException: HV000183: Unable to load 'javax.el.ExpressionFactory'. Check that you have the EL dependencies on the classpath 
    at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:172) 
    at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:118) 
    at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:110) 
    at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:86) 
    at org.hibernate.validator.HibernateValidator.createGenericConfiguration(HibernateValidator.java:41) 
    at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:276) 
이 다음 dependecies 추가하는 가져

:

<dependency> 
    <groupId>javax.el</groupId> 
    <artifactId>javax.el-api</artifactId> 
    <version>2.2.4</version> 
</dependency> 
<dependency> 
    <groupId>org.glassfish.web</groupId> 
    <artifactId>javax.el</artifactId> 
    <version>2.2.4</version> 
    </dependency> 

이 다른 예외에 이르게 : 나는 포기

Caused by: java.lang.NoClassDefFoundError: org/springframework/web/client/RestTemplate 

하는 시점을 내 POM 패치. 나는 GIT에서 Zuul 프로젝트를 복제하기 위해 갔다. 불행히도 나는 똑같은 문제를 겪고있다.

생각하십니까?

답변

2

봄 구름 샘플 버전의 zuul 서버에서 같은 문제가 발생했습니다. 스프링 부트 스타터 웹과 액츄에이터를 추가 한 후에는 멀리 떨어졌습니다.

1

이것은 종속성 구조가 변경된 것입니다. 왜 EL 구현이 필요한지조차 모르지만, tomcat-embed-el이 아마도 가장 좋은 것일 것입니다. 그리고 다른 클래스는 spring-web에서 왔습니다.

+0

감사합니다. Dave. tomcat-embed-el 여전히 결과를 java.lang.NoClassDefFoundError : org/springframework/web/client/RestTemplate에 추가합니다. – Klaus

+0

그래서 내가 스프링 웹이 필요하다고 했지. –

+0

이 클래스의 대부분의 응용 프로그램은 이미 spring-boot-starter-web을 사용하고 있기 때문에 그 중 일부는 아직이 문제를 제기하지 않은 것입니다. –

관련 문제