Gradle脚本在Maven repos之间移动工件

时间:2012-11-15 20:16:37

标签: repository gradle

我正在使用Gradle脚本将工件从一个Maven仓库复制到另一个Maven仓库。我试图通过将工件作为依赖项来破解它,然后我们将其设置为存档。

我尝试过使用configuration.files()方法,但是我无法构建它接受的依赖项对象。

dependencies {
    compile group: artGroup, name: artName, version: artVersion
}

artifacts {
    archives configurations.default.files( 
        /* I have not been able to build an argument this method accepts */ 
    )
}

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: 'file:../../../repo')
        }
    }
} 

1 个答案:

答案 0 :(得分:1)

我们已经在其他环境中完成了这项工作(将文件从远程复制到本地),看起来您对Gradle DSL有一些误解。

首先,工件{archives {}}用于将可部署工件添加到存档配置。您无法在此块中使用它(在配置文件中执行某些操作)。

其次,您无法按原样上传您解决的内容。上传是针对生成的工件或通过构建手动添加(它们具有特殊类型)。

对于我们来说,解决方案是创建一个新的Gradle任务“copyArtifacts”,它实际上将已解析配置的所有文件复制到本地文件夹中。

希望这有帮助。