# cglib/cglib

cglib - Byte Code Generation Library is high level API to generate and transform Java byte code. It is used by AOP, testing, data access frameworks to generate dynamic proxy objects and intercept field access.

Repository: https://github.com/cglib/cglib
Canonical: https://ross.abutalabs.com/products/cglib
Homepage: https://github.com/cglib/cglib/wiki
Language: Java
License: Apache-2.0
License Family: permissive
Last push: 2024-08-16T10:22:51+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 4540, "days_push": 747, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4893, forks 872 (observed 2026-08-28T04:09:02.016523+00:00)

## What it is
cglib is a high-level Java bytecode generation and transformation library used to create dynamic proxies, extend classes, and intercept method/field access at runtime. It is widely used by AOP, testing, and data access frameworks, though it is now unmaintained and broken on JDK17+.

## Use cases
- generate dynamic proxy objects in Java at runtime
- intercept method calls for AOP-style frameworks
- extend Java classes without source code
- mock or stub classes in testing frameworks
- generate persistent classes for ORM data access
- transform Java bytecode programmatically

## When to choose
- you maintain a legacy Java codebase already using cglib on JDK 8-11
- you need runtime class extension or dynamic proxies on an older JVM
- you're studying how bytecode generation and proxying works

## When to avoid
- you're starting a new project - use ByteBuddy instead
- you target JDK 17 or newer, where cglib may not work at all
- you need an actively maintained library with timely bug fixes

## Facets
- artifact type: library
- maturity: maintenance
- function: compiler, developer-tools, middleware
- domain: developer-tools, programming-languages, testing
- platform: jvm, cross-platform
- tags: bytecode-generation, dynamic-proxies, aop, java, asm, code-generation, unmaintained

## Member repositories
- cglib/cglib (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:02.016523+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:18:10.898009+00:00, confidence not recorded.
  - readme: https://github.com/cglib/cglib (fetched 2026-08-28T04:09:02.016523+00:00, sha f204ca08e0da)
  - homepage: https://github.com/cglib/cglib/wiki (fetched 2026-08-29T09:00:20.979535+00:00, sha 9b310761d6dd)
- Data as of 2026-08-30T08:39:29.467469+00:00.
