1

奇妙な問題があり、解決できませんでした。サンプル JPA スプリント ブート (v0.5.0-M6) プロジェクトを、作成中のアプリケーションの出発点として使用しようとしています。JPA サンプルを取得し、ローカルで実行しました。次に、コードをそのプロジェクトに追加しました。私はEclipseにインポートし、スプリングブートとして実行しました。次に、次のエラーが表示されます。

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 フォーラムで検索しましたが、誰も同じ問題を抱えているようには見えません。

質問: 自動構成でアプリケーション コンテキストを選択する理由は何ですか?

上記の問題を解決するには、何を確認する必要がありますか? ここで自動構成の問題をデバッグするために他に何を提供する必要がありますか?

ティア、

スコット

4

2 に答える 2

3

私は同じ問題を抱えています。Mavenを使用している場合は、pom.xmlを確認してください

Spring 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>

この助けを願っています。

于 2013-12-03T05:52:35.303 に答える