What is it?
REFLECTK is a collection of software development tools that inspect and check your application's source code, bytecode and classpath. It is flexible, powerful and completely written in Java. It can be used to search for Java language elements that fulfill a specified condition, e.g. list all classes that implement a certain interface or list all methods that have references to a certain class.
Because of it's flexible design it is suitable for different usages. Used as a framework inside an application it can provide additional code reflection capabilities, e.g. for plugin mechanisms. Used as development tool it can be used to enforce architectural rules for your application code. To fit into nearly all Java-based development processes it is perfectly integrated into Eclipse, Netbeans and Ant. But it can also be used as stand-alone development tool.
REFLECTK provides a highly configurable and fast search engine, a feature-rich and expandable set of filters and a powerful but intuitive query language (Code Query Language, CQL). To specify all kind of search criteria, concepts similar to propositional logic and first-order logic can be used.
- Consistency check your application's classpath even if source code of some third-party library is missing
- Monitor or apply design rules like naming conventions or layer access restrictions to your projects
- Support a developer when refactoring a project or migrating to another JDK version
- Improve code quality and discover potential programming errors
- Bytecode and source code parsing
- Simple API that allows extensions of third-party developers
- Small footprint (core package ~155 kB)
- No need to learn another tool, simply phrase your thoughts as CQL statements