표준 API를 사용한 클래스 파일 파싱
클래스 파일 파싱 및 변환에 표준 Class-File API를 사용합니다.
코드 비교
✕ Third-party bytecode parser
ClassReader reader = new ClassReader(
Files.readAllBytes(classFile));
reader.accept(visitor, 0);
✓ Java 24+
ClassModel model = ClassFile.of().parse(classFile);
model.methods().forEach(method ->
System.out.println(
method.methodName().stringValue()));
이 코드에 문제가 있나요? 알려주세요.
모던 방식이 더 나은 이유
지원되는 API
JDK 클래스 파일 형식과 함께 제공되고 발전합니다.
더 적은 의존성
외부 라이브러리 없이 일반적인 바이트코드 작업을 처리합니다.
조합 가능한 모델
파싱, 빌드 및 변환이 하나의 API를 공유합니다.
이전 방식
ASM ClassReader
모던 방식
Class-File API
JDK 버전
24
난이도
고급
JDK 지원
표준 API를 사용한 클래스 파일 파싱
사용 가능
JDK 24에서 정식 기능으로 확정 (JEP 484, 2025년 3월).
동작 원리
JDK 24에서 정식 기능이 된 Class-File API는 JVM 클래스 파일을 위한 지원되는 모델과 변환 기능을 제공합니다. JDK와 함께 클래스 파일 형식의 변화를 따르며, 다양한 검사 및 생성 작업에서 서드파티 라이브러리가 필요하지 않게 합니다.
관련 문서
증명