开发者社区> 问答> 正文

arthas能在线改代码吗?

arthas能在线改代码吗?

展开
收起
芬奇福贵 2023-07-13 12:20:58 550 0
5 条回答
写回答
取消 提交回答
  • 能,使用 Arthas 提供的命令进行代码重定义,例如重新定义方法体或修改方法参数等。

    2023-07-13 22:32:56
    赞同 展开评论 打赏
  • 是的,Arthas 是一个 Java 诊断工具,可以在线进行代码修改和热更新。它提供了很多强大的功能,包括类似于调试器的能力,可以在运行时查看和修改 Java 应用程序的状态。

    使用 Arthas,您可以通过以下方式进行在线代码修改:

    1. 动态修改方法内部的逻辑:您可以使用 Arthas 提供的 mc 命令来修改正在执行的方法的字节码,从而实现在线改变方法的逻辑。这样可以避免重启应用程序或重新部署的时间成本。

    2. 热替换类文件:Arthas 支持将已经编译好的类文件动态加载到 JVM 中,替换原有的类定义。这样您可以直接修改类文件并重新加载,以达到在线修改代码的效果。

    请注意,尽管 Arthas 提供了这些功能,但在线修改代码可能会带来潜在的风险和不稳定性。建议您在生产环境中慎重使用,并确保对代码的修改和测试有充分的了解和掌握。

    2023-07-13 19:17:27
    赞同 展开评论 打赏
  • 可以的。

    此答案来自钉钉群“Arthas开源交流群"

    2023-07-13 17:08:37
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    https://arthas.aliyun.com/doc/

    Arthas 可以通过“trace”、“watch”、“monitor”等命令,实时监控应用程序的方法调用、参数值、返回值等信息,同时还可以通过“dump”、“jad”等命令,查看类的字节码、反编译代码等信息。这些功能可以帮助开发人员快速定位应用程序中的问题,但是并不支持在线修改代码。

    2023-07-13 16:52:19
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    Arthas 是一个 Java 应用诊断利器,可以在线热更新线上代码。 通过 Arthas 可以修改线上的代码,无需重新打包部署,方便快捷。

    2023-07-13 13:57:54
    赞同 展开评论 打赏
问答分类:
问答标签:
来源圈子
更多
收录在圈子:
+ 订阅
阿里云 云原生应用平台 肩负阿里巴巴集团基础设施云化以及核心技术互联网化的重要职责,致力于打造稳定、标准、先进的云原生产品,成为云原生时代的引领者,推动行业全面想云原生的技术升级,成为阿里云新增长引擎。商业化产品包括容器、云原生中间件、函数计算等。
问答排行榜
最热
最新

相关电子书

更多
Arthas应用诊断利器-新特征介绍 立即下载
使用Arthas 抽丝剥茧深入应用-线上诊断利器之外 立即下载
workshop专场--容器、消息&IoT专场-开发者动手实践营-容器、消息和IoT-Java诊断利器Arthas排查问题实践 立即下载