Ciò è in genere causato se i metadati di mappatura Mongo ottenuti per le entità non analizzano le entità all'avvio dell'applicazione. Per impostazione predefinita, AbstractMongoConfiguration
usa il pacchetto della classe di configurazione effettiva per cercare @Document
classi annotate all'avvio.
Il messaggio di eccezione mi fa presumere che SpringCloudMongoDBConfiguration
non si trova in nessuno dei super pacchetti di com.foo.model.project
. Ci sono due soluzioni a questo:
- Rispetta la comodità di inserire le classi di configurazione dell'applicazione nel pacchetto radice della tua applicazione. Ciò farà sì che i pacchetti dell'applicazione vengano scansionati per le classi di dominio, i metadati ottenuti e il rilevamento del nuovo funzionamento come previsto.
- Consegna manualmente il pacchetto contenente le classi di dominio all'infrastruttura sovrascrivendo
MongoConfiguration.getMappingBasePackage()
.
Il motivo per cui potresti vedere la configurazione funzionare nell'ambiente locale è che i metadati della mappatura potrebbero essere ottenuti tramite un'operazione di persistenza non persistente (ad esempio una query) e tutto il resto procedendo da lì.