It is an error to try to resolve a configuration which has canBeResolved set to false. The reason is that depending on the usage (compile classpath, runtime classpath), it can resolve to different graphs. Such a configuration is there only to declare dependencies. That is to say we’re going to compute a dependency graph, resolve the components in the graph, and eventually get artifacts.Ī configuration which has canBeResolved set to false is not meant to be resolved. This distinction is represented by the canBeResolved flag in the Configuration type.Ī configuration that can be resolved is a configuration for which we can compute a dependency graph, because it contains all the necessary information for resolution to happen.
Avoiding Unnecessary Task Configuration.
Understanding Configuration and Execution.Sharing Build Logic between Subprojects.Declaring Dependencies between Subprojects.