Điều này thường xảy ra nếu siêu dữ liệu ánh xạ Mongo thu được cho các thực thể không quét các thực thể khi khởi động ứng dụng. Theo mặc định, AbstractMongoConfiguration
sử dụng gói của lớp cấu hình thực tế để tìm kiếm @Document
các lớp được chú thích khi khởi động.
Thông báo ngoại lệ khiến tôi giả định rằng SpringCloudMongoDBConfiguration
không nằm trong bất kỳ siêu gói nào của com.foo.model.project
. Có hai giải pháp cho điều này:
- Bám sát vào sự tiện lợi của việc đưa các lớp cấu hình ứng dụng vào gói gốc của ứng dụng của bạn. Điều này sẽ khiến các gói ứng dụng của bạn được quét các lớp miền, siêu dữ liệu thu được và công việc phát hiện mới như mong đợi.
- Chuyển giao gói chứa các lớp miền theo cách thủ công cho cơ sở hạ tầng bằng cách ghi đè
MongoConfiguration.getMappingBasePackage()
.
Lý do bạn có thể thấy cấu hình hoạt động trong môi trường cục bộ là siêu dữ liệu ánh xạ có thể nhận được thông qua hoạt động liên tục không liên tục (ví dụ:truy vấn) và mọi thứ khác tiếp tục từ đó.