Inspectopedia Help

Configuration avoidance

(Gradle 4.9+) Detects usage of API that interacts with tasks eagerly.

Eager interaction with tasks implies some inconveniences:

  • The user should manually set up all dependencies between tasks;

  • In the configuration phase, all the tasks accessed via the eager API become configured, even if they are not executed afterwards. It results in performance degradation.

Eventually, the eager API will be deprecated in favor of the lazy one.

For a migration guide, see the Gradle documentation.

Example:

task foo { // reports 'task', suggests replacing it with 'task.register' // ... }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Gradle-Java, 233.SNAPSHOT

Last modified: 13 July 2023