2013-11-21 4 views
2

У меня странная проблема и что я не смог ее решить. Я пытаюсь использовать пример проекта JPA sprint boot (v0.5.0-M6) в качестве отправной точки для приложения, которое я пишу. Я схватил образец JPA и получил его для запуска локально. Затем я приступил к добавлению моего кода в этот проект. Я импортировался в затмение и запускался в качестве весенней загрузки. Тогда я получаю эту ошибку:Весенняя загрузка не запускается - IllegalAccessError при запуске

Exception in thread "main" java.lang.IllegalAccessError: tried to access class org.springframework.core.io.DefaultResourceLoader$ClassPathContextResource from class org.springframework.boot.context.embedded.EmbeddedWebApplicationContext 
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getResourceByPath(EmbeddedWebApplicationContext.java:386) 
at org.springframework.core.io.DefaultResourceLoader.getResource(DefaultResourceLoader.java:100) 
at org.springframework.context.support.GenericApplicationContext.getResource(GenericApplicationContext.java:211) 
at org.springframework.boot.context.initializer.ConfigFileApplicationContextInitializer.load(ConfigFileApplicationContextInitializer.java:192) 
at org.springframework.boot.context.initializer.ConfigFileApplicationContextInitializer.load(ConfigFileApplicationContextInitializer.java:134) 
at org.springframework.boot.context.initializer.ConfigFileApplicationContextInitializer.initialize(ConfigFileApplicationContextInitializer.java:121) 
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:403) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:287) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:749) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:738) 

Из того, что я могу сказать, это неправильный контекст приложения, так как я не использую конфигурацию XML, но аннотации для управления конфигурацией. Spring boot автоматически выбирает этот, и мне нужно сказать, чтобы он не использовал выше. По крайней мере, это то, что я думаю, что мне нужно делать.

Я искал здесь и в форумах spring.io, но никто, похоже, не имеет такой же проблемы.

Вопрос: Что приводит к выбору контекста приложения с автоматической настройкой?

Что я должен искать для решения вышеуказанной проблемы? Что мне еще нужно сделать, чтобы помочь отладить проблему автоматической настройки?

ТИА,

Скотт

+0

'java.lang.IllegalAccessError' обычно является признаком проблем с окружающей средой. Может быть, плохой файл jar на пути к классам или неправильный JDK? Трудно сказать, не более подробно. Работает ли образец без изменений? Какие были изменения? Можете ли вы поделиться кодом? –

ответ

3

У меня такая же проблема. , если вы используете maven, проверьте свой pom.xml

удалить версию конфликта весной Lib.

<properties> 
     <hibernate.version>4.2.0.Final</hibernate.version> 
     <mysql.connector.version>5.1.21</mysql.connector.version> 
     <spring.version>3.2.2.RELEASE</spring.version> 
</properties> 

я удалить эту линию

<spring.version>3.2.2.RELEASE</spring.version> 

и в Maven зависимости только

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-jdbc</artifactId> 
</dependency> 

Надежда эта помощь.

+1

Ваш ответ привел меня к решению моей проблемы. Это связано с тем, что в моем многомодульном родительском POM я включил зависимость для конкретной версии (3.2.5) весеннего ядра. Я бы не подумал, что это будет причиной проблемы, но, похоже, это так. Спасибо за помощь! –

+0

Это очень помогло мне! В моей ситуации у меня также был многомодульный родительский POM. В моей родительской POM я должен был обеспечить, чтобы была установлена ​​в ТОЛЬКО ВЕРСИЯ, как в POM с пружинными загрузками. –

0

Я столкнулся с той же проблемой и решил исправить ссылку на родительский родитель-стартер.

В файле pom.xml я использовал:

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>0.5.0.M6</version> 
</parent> 

У меня есть несколько актуальных вопросов, чтобы исправить сейчас, так что я не осмотрел этот родительский POM, чтобы увидеть, что это так важно, но я надеюсь, что это может помогите вам - не забудьте проверить версию, которую вы используете!

Смежные вопросы