Skip to content

Collection of AspectJ Java Aspects to facilitate aspect-oriented programming patterns: logging, caching, validating, etc.


Notifications You must be signed in to change notification settings


Repository files navigation

EO principles respected here DevOps By We recommend IntelliJ IDEA

mvn PDD status Javadoc Maven Central codecov

More details are here:

Also, read this blog post: Java Method Logging with AOP and Annotations.

This module contains a collection of useful AOP aspects, which allow you to modify the behavior of a Java application without writing a line of code. For example, you may want to retry HTTP resource downloading in case of failure. You can implement a full do/while cycle yourself, or you can annotate your method with @RetryOnFailure and let one of our AOP aspects do the work for you:

import com.jcabi.aspects.RetryOnFailure;

public class MyResource {
    public String load(final URL url) {
        return url.openConnection().getContent();

Full list of AOP annotations is here.

How to contribute?

Fork the repository, make changes, submit a pull request. We promise to review your changes same day and apply to the master branch, if they look correct.

Please run Maven build before submitting a pull request:

$ mvn clean install -Pqulice