wayn111 / mybatis-xmlreload-spring-boot-starter

mybatis-xmlreload-spring-boot-starter 支持xml文件热更新
Apache License 2.0
57 stars 19 forks source link

未生效 #2

Closed chenfeiwu closed 1 year ago

chenfeiwu commented 1 year ago

image image

wayn111 commented 1 year ago

Spring boot2.0项目可以使用2.0.4.m2版本,已经修复这个问题

chenfeiwu commented 1 year ago

Spring boot2.0项目可以使用2.0.4.m2版本,已经修复这个问题

嗯 可以了 这个是不是有性能影响,在生产环境是不是要关闭

wayn111 commented 1 year ago

肯定是有一点得,生产是建议关闭

foxmale007 commented 1 year ago

win10下DirectoryWatcher监听xml目录添加文件会触发event,但是MODIFY不会触发,很是奇怪: classpath*:org/subsys/**/xml/*Mapper.xml DirectoryWatcher已监听到xml目录

foxmale007 commented 1 year ago

大概知道问题了,IDEA会把build目录重建,导致无法触发更新(因为整个目录都重建了)。如果直接修改build目录下的文件,倒是可以触发更新的

wayn111 commented 1 year ago

大概知道问题了,IDEA会把build目录重建,导致无法触发更新(因为整个目录都重建了)。如果直接修改build目录下的文件,倒是可以触发更新的

理论上,xmlreload会监听你项目resource下的mapper文件的

foxmale007 commented 1 year ago

resources下的目录是有监听,但是一旦build后就不行了,很是奇怪。例如我看启动 时.paths(rootPaths)里包含了build下的xml路径 build\resources\main\org\subsys\core\mapper\xml 有时候还报build\resources\main\org\subsys\core\mapper\xml目录不存在的问题,估计是IDEA编译时重建了(我这个目录里就一个XML文件)

wayn111 commented 1 year ago

resources下的目录是有监听,但是一旦build后就不行了,很是奇怪。例如我看启动 时.paths(rootPaths)里包含了build下的xml路径 build\resources\main\org\subsys\core\mapper\xml 有时候还报build\resources\main\org\subsys\core\mapper\xml目录不存在的问题,估计是IDEA编译时重建了(我这个目录里就一个XML文件)

加我微信,给你远程看看?

foxmale007 commented 1 year ago

解决了,因为gradle和maven默认输出的目录不一样导致。因为是切换到源码目录去reload xml的,修改下class_path_target_dir就可以reload源码下的xml了,不用build project。感谢大佬帮助

wayn111 commented 1 year ago

解决了,因为gradle和maven默认输出的目录不一样导致。因为是切换到源码目录去reload xml的,修改下class_path_target_dir就可以reload源码下的xml了,不用build project。感谢大佬帮助

ok