背景
- マイクロサービスの登録と発見サービスを構築するために春のクラウドを使って与えられている(ユーレカ)プロジェクトは、次のエラーを開始しました
*************************** アプリケーションが起動に失敗しました ******************* ******** 説明: DataSourceを設定するために失敗しました:「URL」属性が指定されず、埋め込まれたデータソースを設定することはできませんでした。 理由:最適なドライバを決定するために失敗しました。クラス アクション: 次のことを考えてみましょう: あなたは、組み込みデータベース(H2、HSQLまたはDerbyを)したい場合は、クラスパスにそれを入れてください。 あなたは、データベースの設定は、特定のプロファイルからロードする必要がある場合は(ないプロファイルが現在アクティブではない)、それを有効にする必要があるかもしれません。
与えられた理由
- インターネットは解決策を見つけるために、このエラーは、一般的に以下のいくつかの理由になります
- 一つの理由:春のブート構成、DataSourceAutoConfigurationは、自動的にデータソースをロードします
- 春のブートが開始org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfigurationたときに、このクラスは、デフォルトでロードされます、DataSourceAutoConfigurationクラスは、DataSourceビーンに注入スプリング@Configurationに注釈を使用しています。プロジェクトのデータソース設定ファイルの情報を見つけることができない場合は、プロジェクトが起動時にエラーになります
- 二つの理由:無添加application.properties/またはapplication.ymlファイルデータベース構成情報
- 春のブートクラスパスは、自動的に元の情報に対応するデータが見つからない場合、それはエラーになり、設定ファイルにデータソース情報をロードします
- 春のブート構成DataSourceAutoConfigurationは、自動的にデータソース、データソースの情報を読み込むが、原因を見つけることができません:私は、サービス登録と発見(ユーレカ)プロジェクトを構築しているため、データ・ソース構成を必要としないプロジェクトは、理由を与えられていますの
- 一つの理由:春のブート構成、DataSourceAutoConfigurationは、自動的にデータソースをロードします
ソリューション
- スプリングブート起動クラスの注釈に@SpringBootApplication(DataSourceAutoConfiguration.classザは除外= {}) 、自動的にアイテムをロードするために、データソースを必要としないスタートを表します
@EnableEurekaServer @SpringBootApplication(除外 = {。DataSourceAutoConfiguration クラス}) パブリック クラスEurekaApplication { 公共 静的 ボイドメイン(文字列[]引数){ SpringApplication.run(EurekaApplication。クラス、引数)。 } }
- 次