これは通常、エンティティに対して取得されたMongoマッピングメタデータがアプリケーションの起動時にエンティティをスキャンしない場合に発生します。デフォルトでは、AbstractMongoConfiguration
実際の構成クラスのパッケージを使用して、@Document
を検索します 起動時に注釈付きのクラス。
例外メッセージにより、SpringCloudMongoDBConfiguration
と見なされます。 com.foo.model.project
のどのスーパーパッケージにも含まれていません 。これには2つの解決策があります:
- アプリケーション構成クラスをアプリケーションのルートパッケージに入れるという便利さにこだわる。これにより、アプリケーションパッケージがスキャンされ、ドメインクラス、取得されたメタデータ、およびis-new-detectionが期待どおりに機能します。
-
MongoConfiguration.getMappingBasePackage()
をオーバーライドして、ドメインクラスを含むパッケージをインフラストラクチャに手動で渡します。 。
構成がローカル環境で機能していることがわかる理由は、マッピングメタデータが、非永続的な永続化操作(クエリなど)およびそこから進行する他のすべてを通じて取得される可能性があるためです。