我在以下结构中有两个单独的gradle项目。我想编写一个任务,将构建jar从projectA移到projectB的lib文件夹。

projectA-> c:/用户/ someUser / dev / projectA

projectB-> c:/ User / someUser / dev / projectB

在projectA的生成脚本中,我具有以下将生成的jar从projectA的build / lib文件夹移动到projectB的lib文件夹的功能。

task deployJar(type: Copy) {
    from('build/libs/')
    into('C:/Users/someUser/dev/projectB/libs')
    include('*.jar')
}

我正在使用绝对路径,但是它不起作用。我希望有人能指出我做错了什么。

谢谢

最佳答案

您是否考虑过将项目设置为多项目?您可以将它们与includeFlat挂钩。通常要做的是将projectA部署到 Artifact 存储库,并通过dependencies {}解析projectB中的jar,或者将projectA / projectB设置为多项目,并使projectB依赖于projectA的输出(也通过dependencies {})。如果您走第二条路线,则会在构建projectB时得到一些不错的信息,例如projectA在需要时自动重建。

我没有发现您已经拥有的任何错误。它会因错误而失败吗?

请记住,使用绝对路径设置构建将使其不可移植/易碎。

关于gradle - Gradle-使用复制任务从外部项目复制文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28665718/

10-11 22:14