asm的标准是什么?

iCr*_*est 7 java jar

有时我会asm在名称文件库jar中看到字母" ".

例如,在包框架库中.

SpringFramework  :  org.springframework.asm-x.y.z.M(a).jar 
Eclipse Link     :  org.eclipse.persistence.asm.jar
Run Code Online (Sandbox Code Playgroud)

Asm, 这是什么意思?

pru*_*nge 6

您提到的两个库都是ASM库的副本,它提供了低级字节码操作功能(ASM - >汇编).

Spring和EclipseLink更改了ASM的软件包名称,并将其重新打包以供内部使用.这是为了避免在这些库的用户想要使用他们自己的ASM版本的情况下发生冲突.通过重命名的包,两个版本可以愉快地共存.JDK也是这样做的 - 你可以看到例如jdk.internal.org.objectweb.asm.util.ASMifier是JDK的一部分.'jdk.internal'前缀是为了避免与其他版本的ASM用户可能想要使用的冲突.


iCr*_*est 6

ASM 名称没有任何意义:它只是对__asm__C 中关键字的引用,它允许用汇编语言实现某些功能。

ASM 库的目标是生成、转换和分析已编译的 Java 类,这些类表示为字节数组(因为它们存储在磁盘上并加载到 Java 虚拟机中)。为此,ASM 提供了通过使用比字节更高级别的概念来读取、写入和转换此类字节数组的工具,例如数字常量、字符串、Java 标识符、Java 类型、Java 类结构元素等。 注意 ASM 的范围library 严格限于读、写、转换和分析类。特别是类加载过程超出了范围。

资料来源:1.2.1。范围 - 脚注


Mur*_*ain 0

ASM 简单地代表ASMifier 工具