build.gradle 存储库中不允许带有 Url 参数的 Maven

Maven with Url Argument Not Allowed in build.gradle repositories

我正在尝试通过 Maven 在我的 kotlin 项目中包含一个 jitpack library,但是我在文档中被告知要将其包含在我的项目中所遵循的语法不起作用。具体来说,当我尝试在我的项目级 gradle 文件中添加 maven() 时:

repositories {
    mavenCentral()
    jcenter()
    maven(url = "https://jitpack.io") {
        name = "jitpack"
    }
}

我在我的 intelliJ IDE 中收到此错误:maven' in 'org.gradle.api.artifacts.dsl.RepositoryHandler' cannot be applied to '(java.lang.String, groovy.lang.Closure<java.lang.String>)。在 maven() 调用中包含 url 作为参数似乎有问题。

我尝试更改语法以匹配 gradle docs 中显示的示例:

repositories {
    mavenCentral()
    jcenter()
    maven {
        url = uri("https://jitpack.io")
        name = "jitpack"
    }
}

但是在我的模块级 gradle 文件中实现依赖后,我仍然无法访问代码中的库。

mavenCentral()和maven()一起使用有冲突吗?似乎问题仅在于使用 url 作为 maven() 的参数的语法。我该怎么做才能解决这个问题并获得我需要的 jitpack 库的访问权限?

解决方案是将 Maven 调用添加到我的项目级别 build.gradle 文件而不是应用程序级别。

像这样:

模块级别build.gradle

repositories{
    //added maven repo here instead of the app-level build.gradle file
    maven { url = "https://jitpack.io"}
}
...
dependencies {
    ...
    implementation "com.github.Dwolla:dwolla-v2-kotlin:0.2.0"
}