page contents

OpenJDK提案将提供Java类文件API

根据 Java 社区的一项提议,Java 将获得一个用于处理 Java 类文件的API。

attachments-2022-06-8IgGrz9S62bd012880d28.png

根据 Java 社区的一项提议,Java 将获得一个用于处理 Java 类文件的API。

目的

该Classfile API提案的草案显示,该提案旨在提供一个用于解析、生成和转换Java类文件的API,最初将作为 JDK中ASM的内部替代品,之后再作为公共API开放。根据计划,ASM最终将被完全从JDK中删除。

详细内容

Classfile API提案内容指出:类文件生成、解析和检测在Java生态系统中无处不在;许多工具和库需要能够处理类文件,并且框架通常会执行on-the-fly bytecode instrumentation、transformation 和 generation。JDK应该为读取、写入和转换Java类文件提供准确、完整、最新、高性能的API。

该API的设计目标和原则是让所有类文件实体(例如方法和字段)由不可变对象表示,由用户驱动的导航也是一个目标。

激发对Java类文件库的调用的因素包括:

  • JDK 整合。 JDK本身在处理类文件方面很重要。JDK使用ASM存在固有的延迟。
  • 框架和运行 JDK 之间的版本偏差。 处理类文件的应用程序和框架通常捆绑一个类文件库,例如ASM。但是由于新的类文件功能可以出现在任何JDK版本中,应用程序和框架更频繁地遇到比它们捆绑的库更新的类文件,从而导致运行时错误。开发人员需要一个与运行JDK保持同步的类文件库。
  • JVM 进化。 与Java早期相比,JVM和类文件格式现在的发展速度要快得多。虽然有些演变很简单,但有些演变更复杂,例如 Project Valhalla 带来了新的字节码、字段描述符和验证规则。在某些时候,改进现有库以支持这些新功能可能会代价很大或很复杂。
  • 语言改进。 自从编写ASM以来,该语言已经有了很大的改进。

计划要求最初将ASM替换为JDK的运行时依赖项,而不会造成不可接受的性能损失。另一个目标是替换编译器和 JDK 工具使用的内部类读取器库。最终,一系列框架和应用程序应该能够使用该库作为 ASM、cglib和其他字节码库的替代品。

更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

  • 发表于 2022-06-30 09:49
  • 阅读 ( 461 )
  • 分类:行业资讯

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1474 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章