Spoon is an open-source library for analyzing and transforming Java source code.

Spoon provides a complete and fine-grained Java metamodel where any program element (classes, methods, fields, statements, expressions...) can be accessed both for reading and modification. Spoon takes as input source code and produces transformed source code ready to be compiled. It is usable for instance for code quality analysis, instrumentation and monitoring, static analysis, dynamic analysis.




CeCILL-C Free Software License Agreement



Releases / Downloads

VCS repository(ies)

Issue tracker URL

Discussion channels

Project leader(s)

Martin Monperrus


  • 2024/04/05 - Version 11 is out!
  • 2022/10/10 - Spoon 10.2.0 is released
  • 2019/02/10 - Spoon 7.3.0 is released
  • 2018/07/05 - Spoon 7.0.0 is released, with support for Java 10
  • 2017/12/20 - Spoon 6.1.0 is out, with full support for Java 9


award.png  2017  Community Award

OW2 submission

Market Readiness Synthesis

With initial development going back to 2005, Spoon is a stable, rock-solid library for tweaking Java programs. It does at the source code level what ASM does at bytecode level. Spoon is an official Inria open-source project maintained by a core team of researchers and academics who leverage it for their research papers. Support is provided via the issue tracker, consulting is available via the website. Spoon is an alternative to another comparable open source project called JavaParser.

Market Readiness Level

Project Market Readiness Level computed by OW2.

More on the definition and computation of Market Readiness Levels here.

Best Practices Implementation

Coverage of best practices in open source software development implemented by the project.

More on best practices and how they are collected here.

Project Profile  

Computation of the project's profile through five key attributes defined by OW2.

More on how project attributes are commputed here.

MRL Assessment Diagram

This page lists the control points used in our assessment of the project's market readiness with their normalised values. It shows how they are combined to form the model. Please go to the methodology overview for more on the model and data collection.

Sources of Raw Data

Please use the links in this section for the raw data used in our MRL modeling.