是否可以修改字节码并用javassist保存?
我在网上找到的所有参考文献都说字节码可以在运行时修改,但我似乎没有找到修改后的字节码是否可以替换原始字节码。
这样,原始字节码可以被替换一次,其余时间,使用之后的增强版本。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我在网上找到的所有参考文献都说字节码可以在运行时修改,但我似乎没有找到修改后的字节码是否可以替换原始字节码。
这样,原始字节码可以被替换一次,其余时间,使用之后的增强版本。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
是的,它被称为
构建时
字节码检测;javassist
以及aspectj
等库支持此模型。我对后者与 Apache Maven 结合使用 aspectj-maven-插件。
[编辑] 另请参阅使用 Javassist 实现构建时字节码检测文章。
Yes, it's called
build-time
byte-code instrumentation;javassist
as well as libraries such asaspectj
supports this model.I've had good experience with the latter in combination with
Apache Maven
using the aspectj-maven-plugin.[Edit] Also see the Implementing Build-time Bytecode Instrumentation With Javassist article.