type_name_not_found - (Javers , Spring-boot)
type_name_not_found - (Javers , Spring-boot)
使用 javers-core 3.10.2
和 javers-spring-boot-starter-sql 3.10.2
javers 最初效果很好。但是在重新启动 spring boot 应用程序后出现以下错误。
JaversException TYPE_NAME_NOT_FOUND: type name 'Person' not found. If you are using @TypeName annotation, remember to register this class using JaversBuilder.withPackagesToScan(String) or JaversBuilder.scanTypeName(Class)] with root cause
错误消息说明了您必须执行的操作,请按照此处 https://javers.org/documentation/spring-boot-integration/#javers-configuration-properties
中所述在您的 application.yml
中使用 javers.packagesToScan
属性
- 默认情况下 javers 存储完整的包路径(com.app.model.Person)
作为我们存储审核的模型名称 trails.Which 可能
在代码重构期间更改。因此,在获取审核日志时,我们得到
错误 TYPE_NAME_NOT_FOUND 因为旧路径仍然存在
javers 表。
为了避免这种情况,我们可以使用两种策略:
对模型使用@Typescan("Person")注解class并设置
javers.packagesToScan=com.app.model,com.app.doc.model 在 spring
属性文件
或 运行 迁移所有 jv_* 表,将旧路径替换为新路径
路径
使用 javers-core 3.10.2
和 javers-spring-boot-starter-sql 3.10.2
javers 最初效果很好。但是在重新启动 spring boot 应用程序后出现以下错误。
JaversException TYPE_NAME_NOT_FOUND: type name 'Person' not found. If you are using @TypeName annotation, remember to register this class using JaversBuilder.withPackagesToScan(String) or JaversBuilder.scanTypeName(Class)] with root cause
错误消息说明了您必须执行的操作,请按照此处 https://javers.org/documentation/spring-boot-integration/#javers-configuration-properties
中所述在您的application.yml
中使用 javers.packagesToScan
属性
- 默认情况下 javers 存储完整的包路径(com.app.model.Person) 作为我们存储审核的模型名称 trails.Which 可能 在代码重构期间更改。因此,在获取审核日志时,我们得到 错误 TYPE_NAME_NOT_FOUND 因为旧路径仍然存在 javers 表。
为了避免这种情况,我们可以使用两种策略:
对模型使用@Typescan("Person")注解class并设置 javers.packagesToScan=com.app.model,com.app.doc.model 在 spring 属性文件
或 运行 迁移所有 jv_* 表,将旧路径替换为新路径 路径