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.
Inria has funded the development and maintenance of Spoon since 2005. Today, one Inria engineer is responsible for daily maintenance and community management.
The goal of the Spoon project is to become the reference code transformation tool for Java. For this, we aim at top-quality code and a strong user and contributor base.
The community is pretty active on Github (https://github.com/INRIA/spoon/):Key metrics as of Dec 1st 2016:- 1662 commits- 29 contributors (incl 10+ outside Inria)- 344 issues- 675 pull requests- 274 stars
The documentation is mature and written in English.
Hosted on Github: https://github.com/INRIA/spoon/
Spoon is a project initiated and maintained at Inria, which is member of OW2.
Spoon has potential synergies with the OW2 OSCAR quality programme.
Spoon is complementary to ASM: Spoon does analysis transformation at the source code level while ASM works at the bytecode level.
Spoon manipulates and transforms standard Java 7 and Java 8 code. Supporting Java 9 is the roadmap.
The OW2 projects would get to know a useful mature software, that they can use for analyzing their code base.
Our motivation is to increase the contributor base and user base with a better visibility.
I hereby certify the accuracy of the information provided above.
This wiki is licensed under a Creative Commons 2.0 licenseXWiki Enterprise 6.4.4 - Documentation