有没有办法修改 .class 文件以便向某些方法添加 Java 注释?基本上我想遍历 jar 文件中每个类文件的方法并注释某些方法。请注意,这不是在使用 jar 文件时的运行时。相反,完成后我想用注释修改类文件。
我确实可以访问源代码,所以如果有自动源代码修改器,那也可以......
我假设我需要一个工具,例如Java助手 or ASM。如果是这样,我应该使用哪一个以及我将如何处理?
实际上,这是 AspectJ 的一个经典用例:
declare @method : public * BankAccount+.*(..) : @Secured(role="supervisor")
虽然我承认直接字节码操作更强大,但 AspectJ 对用户更加友好,并且当您做错事时它会立即向您发出编译器警告。
另外,如果您使用加载时间编织,您可以保持原始库 jar 不变,因为编织发生在类加载时。
参考:
- 声明注解
-
AspectJ 的实际应用 (book)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)