web-dev-qa-db-ja.com

Spring-複数のSpring Dataモジュールが見つかり、厳格なリポジトリ設定モードに入ります

Spring Data、Spring-Data-Elastisearch、Spring-data-Redis(httpセッション用)でSpring Boot 2を使用しています。アプリを起動したとき。私は受け取っています

2017-10-29 17:38:33.376  INFO 18625 --- [  restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2017-10-29 17:38:33.451  INFO 18625 --- [  restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2017-10-29 17:38:33.461  INFO 18625 --- [  restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2017-10-29 17:38:33.768  INFO 18625 --- [  restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2017-10-29 17:38:33.783  INFO 18625 --- [  restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.ecommerce.core.repository.elastic.ProductElasticSearchRepository.
2017-10-29 17:38:33.787  INFO 18625 --- [  restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.ecommerce.core.repository.jpa.UserRepository.
2017-10-29 17:38:33.790  INFO 18625 --- [  restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.ecommerce.core.repository.jpa.catalog.CategoryJsonWrapperRepository.
2017-10-29 17:38:33.793  INFO 18625 --- [  restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.ecommerce.core.repository.jpa.catalog.CategoryRepository.
2017-10-29 17:38:33.794  INFO 18625 --- [  restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.ecommerce.core.repository.jpa.catalog.ProductRepository.

私のApp.Javaファイルには、次の行があります(あいまいさを避ける必要があります)

@EnableJpaRepositories(basePackages = {"com.ecommerce.core.repository.jpa"})
@EnableElasticsearchRepositories(basePackages= {"com.ecommerce.core.repository.elastic"})
@EnableRedisRepositories(basePackages = {"org.springframework.data.redis.connection.jedis"})

すべてのスプリングデータリポジトリは、彼のジョブインターフェース(主にJpaRepositoryおよびElasticsearchCrudRepository

私はこれを読みます- https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.multiple-modules.types そしてあなたが見ることができるように、すべて問題なく動作するはずです。

14
ROZZ

おそらく手遅れですが、とにかく。これは単なる情報メッセージであり、Spring Data Moduleがどのように構成されているかを理解するのに役立ちます。例えば:

 INFO 87518 --- [main] .RepositoryConfigurationExtensionSupport : 
     Spring Data JPA - Could not safely identify store assignment for repository 
          candidate interface com.some.package.MyRepository.

Spring Data JPAモジュールはMyRepositoryクラスをスキップし、それを使用しないことを意味します。

1
Alexander

プロジェクトの1つで、次のようなメッセージがありました。

Spring Data LDAP - Could not safely identify store assignment for repository candidate interface com.company.xxx.EncryptionKeyRepository.

解決策は、この行をapplication.propertiesファイルに追加することでした

spring.data.ldap.repositories.enabled=false

これは、Spring Data LDAP用です。他のSpring Dataコンポーネントでも同様だと思います。

0
Igor Delac

あなたの設定は大丈夫です。この問題は、RedisRepositoriesAutoConfigurationが原因です。 EnableRedisRepositoriesは、空のbasePackagesを持つデフォルトの構成でのみ繰り返し登録されます。

この問題を解決するには、次の方法でRedisRepositoriesAutoConfigurationを除外できます。

@SpringBootApplication(
        exclude = { RedisRepositoriesAutoConfiguration.class }
)
public class MySpringBootApp {

}
0
Hank