这个问题听起来可能和这个问题重复,但它们是不一样的。我正在处理一些遗留代码,其中日志记录是在一些(不是全部)类的大多数(不是全部)函数的进入和退出时完成的。这两点的日志记录是使用Antlr或一些类似的工具以编程方式添加的。现在我所拥有的是我想要迁移到新样式的遗留代码。新样式应该在每个具有这些类型的日志记录的函数的顶部添加一个注释(它将使代码在进入和退出时添加日志记录),并从这些函数中删除代码。
采用Antlr的方法来完成这项任务是有问题的,因为它无法理解Java的新语法和语义,并且在多个地方失败。那么解决这个问题的最佳方法是什么呢?
当考虑到可维护性时,保持基于ANTLR(或者任何自定义代码生成工具)将是一个挑战,特别是当语言发生变化时。
我相信你可以看看以下内容:
- AspectJ Spring AOP
注意:当查看第三方库时,请确保该库正在维护中,并且它符合您的需求,而无需对其进行过多的自定义。