I’m using the Gradle Tooling API to programmatically extract the list of other projects’ dependencies.
To put schematically, this is the code I’m using for it:
val connector = GradleConnector.newConnector() val connection = connector.forProjectDirectory(<projectDir>).connect() val project: EclipseProject = connection.model(classOf[EclipseProject]).get() val domainObjectSet = project.getClasspath val gradleModuleVersions = domainObjectSet.asScala.map(_.getGradleModuleVersion) val result = gradleModuleVersions.filter(_ != null).toSet connection.close()
This code runs in the container in brand new environment, thus downloads the Gradle’s zip and caches all the dependencies. The latter takes a lot of time and seems unnecessary.
So, my question is whether there’s a more lightweight way to obtain the project’s dependencies list without having to download all of them?
Maybe there’s a different model, other than EclipseProject, that would suit my needs better?
Thanks in advance.