type_name_not_found-(Javers,春季启动)

时间:2018-07-27 10:11:33

标签: javers

最初使用javers-core 3.10.2javers-spring-boot-starter-sql 3.10.2的三叶草效果很好。但是重新启动 spring boot 应用程序后,出现以下错误。

  

JaversException TYPE_NAME_NOT_FOUND :找不到类型名称“ Person”。如果使用@TypeName批注,请记住使用具有根本原因的JaversBuilder.withPackagesToScan(String)或JaversBuilder.scanTypeName(Class)]注册此类。

2 个答案:

答案 0 :(得分:0)

该错误消息表明您必须执行的操作,如此处https://javers.org/documentation/spring-boot-integration/#javers-configuration-properties

所述,在javers.packagesToScan中使用application.yml属性

答案 1 :(得分:0)

  • 默认情况下,javers存储完整的包路径(com.app.model.Person) 作为我们要存储审计跟踪的模型名称。 在代码重构期间进行更改。因此,在获取审核日志时,我们得到 错误 TYPE_NAME_NOT_FOUND ,因为旧路径仍然存在 javers表。
  • 为避免这种情况,我们可以使用两种策略:

  • 使用@Typescan(“ Person”)注释与模型类并进行设置 春季javers.packagesToScan = com.app.model,com.app.doc.model 属性文件

  • 或在所有将替换旧路径到新表的jv_ *表中运行迁移 路径