Alberto
Alberto

Reputation: 5141

How to list the configured repositories?

How can I list all the repositories configured for a project?

Background: I have a pretty complex gradle build script and cannot get my NetBeans to download the sources for maven dependencies. In that issue-report I was suggested to double check the order in which mavenCentral is being imported.

Upvotes: 30

Views: 19840

Answers (3)

froblesmartin
froblesmartin

Reputation: 1861

Trying to use Alberto's task from his answer I was getting the following error as in my case I had a Plugin repository defined:

No such property: url for class: org.gradle.plugin.use.internal.PluginDependencyResolutionServices$PluginArtifactRepository

To avoid this error I have changed the task logic a bit:

task listrepos {
    doLast {
        println "Repositories:"
        project.repositories.each {
            if (it.name == '__plugin_repository__Gradle Central Plugin Repository') {
                println "Name: " + it.name + "; url: " + it.url
            } else {
                println "Name: " + it.displayName
            }
        }
    }
}

Upvotes: 1

Bwvolleyball
Bwvolleyball

Reputation: 2803

If someone comes to this page looking for the Kotlin (build.gradle.kts) equivalent of @Alberto's answer, it would be done as follows:

tasks.register("listrepos") {
    doLast {
        println("Repositories:")
        project.repositories.map{it as MavenArtifactRepository}
            .forEach{
            println("Name: ${it.name}; url: ${it.url}")
        }
    }
}

Just as a heads up, the cast to a MavenArtifactRepository is required in the Kotlin version to get the url property. This could be different for you if you are not adding Maven Repositories.

Upvotes: 14

Alberto
Alberto

Reputation: 5141

For anyone interested, here is the code to list the loaded repositories (thanks @kelemen):

task listrepos {
    doLast {
        println "Repositories:"
        project.repositories.each { println "Name: " + it.name + "; url: " + it.url }
   }
}

After adding this code to the build script, execute gradle listrepos and voilà...

Upvotes: 61

Related Questions