如何在build.gradle中指定"pig-0.13.0-h2.jar"依赖?

How to specify "pig-0.13.0-h2.jar" dependency in build.gradle?

为了在我的项目中指定 Maven 依赖项,我提供了一个 name、一个 group id 和一个 版本。对于我项目中的每个依赖项,这已经足够了,只保留一个。 Pig 在同一个工件中有多个 jar(不确定我是否有正确的命名法;我对 Maven 还是很陌生),但我只需要一个。

具体来说,我需要pig-0.13.0-h2.jar。但是,当我提供依赖项时

compile "org.apache.pig:pig:0.13.0"

在我的build.gradle中,只下载了pig-0.13.0.jarpig-0.13.0-sources.jarpig-0.13.0.pom。我需要“*-h2.jar”,因为这是适用于我的 Hadoop 版本的正确选项。

有没有办法告诉 Gradle(通常是 Maven 或其他)我的编译依赖项需要 这个确切的 jar,并且只有这个应该包含在类路径中?

你需要的是指定classifier。以下脚本将完成这项工作:

apply plugin: 'java'

repositories {
   mavenCentral()
}

dependencies {
   compile "org.apache.pig:pig:0.13.0:h2"
}

task copyDeps(type: Copy) {
   from configurations.compile
   into 'deps'
}