Gradle:从自定义工件名称中排除修订号

Gradle: excluding revision number from custom artifact name

我的 build.gradle 中有以下自定义工件依赖项:

compile('foo:bar:1.1') {
    artifact {
        name="baz"
        extension="xsd"
        type="xsd"
    }
    force = true
}

当我 运行 gradlew 时,我得到一个错误,说没有这样的文件 nexus.dir/foo/bar/1.1/baz-1.1.xsd

由于我的文件是 nexus.dir/foo/bar/1.1/baz.xsd 我想从 baz.xsd 中获取版本号字符串以便找到它。这可能吗?或者我应该要求 baz.xsd 重命名?

我们试图将版本号添加到工件中,但事实证明我们的 Nexus 服务器想要重命名文件,例如 foo/bar/1.1/bar-1.1-baz.xsd。但无论如何这解决了我的问题,因为我可以像这样简单地指定依赖关系:

compile 'foo:bar:1.1:baz@xsd'

它甚至在发布我的 jar 时很好地转换为 pom,因此获取资源作为对另一个项目的传递依赖也可以正常工作。