Many projects suffer when an upgrade to a new version of a library is needed. Such upgrades would be much easier if usages of deprecated methods would be replaced automatically. The Jackpot 3.0 project comes to help in such cases. It allows to specify refactorings using a domain specific language with Java-like syntax and apply these refactorings on vast amounts of code. It can be also used to perform one-off refactorings, corrections of common anti-patterns and structural search.
Originally, the Jackpot 3.0 project revived a DSL for custom declarative refactorings, originally developed at Sun Labs as part of project Jackpot. The language can be used for semi-automatic library upgrades, one-off refactorings, corrections of common anti-patterns and structural searches. The refactorings are specified using a rules language. The refactorings are found either on the project’s classpath, as “.hint” files in META-INF/upgrade directory, on are specified by the user in the Inspect&Refactor dialog.
Video producer: http://devoxx.com/