NellerLess
NellerLess

Reputation: 965

What tools are out there to audit changes to Java interfaces?

Does anyone know of any tools out there which can summarize changes to Java interfaces between different versions? (By interface I mean the exposed functionality of types in general, not the specific language construct.)

What I would like is some program which takes two versions of the same package or package tree and outputs something like:

or something more sophisticated, the above is just my initial thoughts. A solution could work on bytecode or on source, I don't mind.

Upvotes: 10

Views: 139

Answers (4)

Thilo
Thilo

Reputation: 262534

Clirr is a tool that checks Java libraries for binary and source compatibility with older releases.

Apache Commons use it, it creates reports like this (for Commons Lang).

Upvotes: 2

Alex Miller
Alex Miller

Reputation: 70211

I've used the JDiff doclet in the past for this. Depending what you're doing it can be a pain to setup but I think the Ant task works fairly well.

Upvotes: 0

Stephen C
Stephen C

Reputation: 718926

Take a look at japitools. These tools are used by the GNU Classpath project to compare their APIs for signature compatibility with different versions of the Sun Java class libraries.

Upvotes: 1

b_erb
b_erb

Reputation: 21241

You could implement your own tool using reflection, especially if you want to examine distinct changes of your code. It also works with bytecode.

Upvotes: 0

Related Questions