Gradle如何解释常春藤自定义布局?

时间:2018-01-16 14:07:55

标签: gradle ivy

我已经宣布了一个自定义常春藤存储库布局:

repositories {
    ivy {
        url "https://myurl.com/root/"
        layout 'pattern', {
             artifact "[organisation]/[name]-[version].[ext]"
        }
    }
}

然后我宣布一个依赖:

dependencies {
   compile 'mygroup:myartifact:0.1@zip'
}

但由于某种原因它无法正常工作,Gradle找不到依赖项,而且它似乎找错了地方:https://myurl.com/root/mygroup/[name]-[version].zip

我也尝试过做以下的奇特事情:

dependencies {
   compile module ('mygroup:myartifact:0.1@zip') {
      artifact {
         name = 'myartifact'
         ...
      }
   }
}

但它也不起作用。

如何正确定义布局模式,以便Gradle能够很好地解释它?

1 个答案:

答案 0 :(得分:1)

当您使用'<group>:<artifact>:<version>(@<ext>)'指定依赖项时,Gradle会将以下映射应用于模式:

  • <group>取代[organisation]
  • <artifact>取代[module]
  • <version>取代[revision]
  • <ext>取代[ext]

因此,在您的情况下,您的模式应如下所示:

artifact "[organisation]/[module]-[revision].[ext]"

感谢@RaGe his answer