を使用する場合に失敗。春ブーツ1.5 @JdbcTest私は春ブーツ1.5.0.RC1に新しい@JdbcTestアノテーションを使用しようとしているユーレカディスカバリー
私のアプリは、私がしようとしたとき、私は私のメインの春のブートクラス
に
compile('org.springframework.cloud:spring-cloud-starter-eureka')
私のbuild.gradleで
と
@EnableDiscoveryClient
を持っているユーレカ・ディスカバリーすなわちを使用しています@ JdbcTestを使用してJdbcTemplateベースのDAOをテストするこのエラーが発生する:
***************************
APPLICATION FAILED TO START
***************************
Description:
Parameter 0 of method eurekaHealthIndicator in org.springframework.cloud.netflix.eureka.EurekaDiscoveryClientConfiguration$EurekaHealthIndicatorConfiguration required a bean of type 'com.netflix.discovery.EurekaClient' that could not be found.
Action:
Consider defining a bean of type 'com.netflix.discovery.EurekaClient' in your configuration.
自動設定では、ユーレカ設定の一部がJDBC関連のBeanのみを読み込む必要があるようです。
私がテストに
@TestPropertySource(properties={"eureka.client.enabled=false"})
を追加した場合、問題は消えるが、私は@JdbcTestが唯一の関連Beanがロードされていることをすでに確認してされるべきだと思います。
は、私が何かをしないのですか、これは多分新しい@JdbcTest、または春クラウドユーレカに問題がありますか?
を以下のように追加することで、固定は、テスト用の小道具に、これらのオプションを追加してください: 'eureka.client.register-で、ユーレカ= 'false'と' eureka.client.fetch-registry = false'と 'endpoints.health.enabled = false'を返します。 – Strelok
eureka.client.enabled = falseを追加すると動作します。しかし、@ JdbcTestの考え方は、アプリケーションのJDBCレイヤーにのみ関係するということです。私は全体のアプリケーションで余分な依存関係が問題を引き起こしているか、それらをオフにする方法を開始する必要はありません。 –