根据Java社区正在酝酿的一项提案,Java将获得一个用于处理Java类文件的API。
类文件API建议草案要求提供一个用于解析、生成和转换Java类文件的API。这个类文件库最初将作为ASM Java字节码操作框架的内部替代。最终,ASM将被完全从JDK中删除。
类文件API提案指出,类文件的生成、解析和工具化在Java生态系统中无处不在,许多工具和库都需要处理类文件。框架经常执行实时字节码检测。该提案指出,JDK应该提供一个准确、完整、最新、高性能的API,用于读取、写入和转换Java类文件。
API的设计目标和原则包括让所有的类文件实体,如方法和字段,由不可变的对象表示。用户驱动的导航也是一个目标。促使人们呼吁建立一个Java类文件库的因素包括:
计划要求在没有不可接受的性能损失的情况下,初步取代ASM作为JDK的一个运行时依赖项。另一个目标是替换编译器和JDK工具所使用的内部classreader库。最终,一系列的框架和应用程序应该能够使用这个库来替代ASM、cglib和其他字节码库。