Spoon


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.

Status

Incubation

License(s)

CeCILL-C Free Software License Agreement

Website

Documentation

Releases / Downloads

Issue tracker URL

VCS repository(ies)

Discussion channels

Project leader(s)

Martin Monperrus


News

  • 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

Awards

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.