0

在 gradle文档中,我们可以阅读:

对于项目中的每个配置,Gradle 提供了任务uploadConfigurationNamebuildConfigurationName [18]

据我了解,我可以创建看起来像这样的构建(没有任何插件,因为我不想在这个项目中使用插件):

configurations {
    productSrc
}

// create zip file which will be published
buildProductSrc(type: Copy) << {
    // do the job
}

// publish zip which were build by buildProductSrc
uploadProductSrc {
    repositories {
        ivy {
            url "http://ivy.repo/repo"
        }
    }
}

因此,如果我运行gradle buildProductSrc uploadProductSrc它,它将构建 zip 并在 ivy 存储库上进行 piblish。我是否正确理解它,因为它不起作用?

[更新] 根据 Peter Niederwieser 的回答,这是构建的工作版本:

apply plugin: 'base'

configurations {
    productSrc
}

// create zip file which will be published
buildProductSrc << { // unable to create specific task, for example 'type: Copy'
    // do the job
}

// publish zip which were build by buildProductSrc
uploadProductSrc {
    repositories {
        ivy {
            url "http://ivy.repo/repo"
        }
    }
}
4

1 回答 1

0

要获取uploadConfigurationNamebuildConfigurationName任务,您必须应用base插件,或应用插件的base插件(javagroovy等)。或者,您可以自己声明和配置此类任务(但这需要更多的努力)。

于 2013-06-05T12:33:48.387 回答