GluonJ is a simple aspect-oriented programming (AOP) system for Java. It provides simple but powerful AOP constructs by using annotations in regular Java. Developers can use GluonJ as a compile-time AOP system or a load-time AOP system. Weaving (program transformation) can be done by an ant task or a class loader, respectively. The AOP constructs provided by GluonJ are not only pointcut-advices bu