aspectJ + gradle как запускать?

Пытаюсь подключить и протестировать aspectJ. Необходимо использовать его без Spring. Сборщик - Gradle 5. Среда разработки - IDEA

Изучил множество примеров на git но ни один не заработал как я полагал. Возможно, что я как то не так его запускаю, но не пойму как еще это можно сделать. Я запускаю задачу jar (хотя перепробовал уже все). Если запустить полученный jar, то будет сообщение о том, что нет манифеста. Если добавить в build.gradle

jar {
    manifest {
        attributes 'Main-Class': 'ru.MyClass.MyClass'
    }
} 

То проект запускается, но не отрабатывают аспекты.

Мой проект https://github.com/FilatovDA/aspectJ_test.git

Как правильно запустить такой проект, что бы получить jar с работающими аспектами?


Ответы (1 шт):

Автор решения: Artur Vartanyan

Возможно, есть проблема с fat-jar, которая будет строить дерево зависимостей. Попробуйте данный вариант:

jar {
    manifest {
        // This is where the Main class is specified for launching applications (otherwise the jar will not start)
        attributes 'Main-Class': 'ru.MyClass.MyClass'
    }

    // Create fat-jar file
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
    }
}
→ Ссылка