gpt4 book ai didi

gradle - 创建文件后gradle出版物

转载 作者:行者123 更新时间:2023-12-03 06:09:34 26 4
gpt4 key购买 nike

我正在尝试在我的项目中使用artifactoryPublish。

我想将xml文件发布到 Artifact ,发现可以愉快地将以下内容添加到gradle

publishing.publications {

filexml(MavenPublication) {
artifact "/tmp/file.xml"
setArtifactId('file.xml')
version 1
groupId 'mygroup.test'
}
}
artifactoryPublish {
publications ('filexml')
}

如果/tmp/file.xml存在,则可以正常工作。

但是,如果文件不存在,则会失败。

但是我有一个任务,其中一个 Action 将创建文件

就像是
task createFile {

doLast {
do.work.to.create.file
}
}

但是似乎publishing.publications正在读取构造中的信息,而不是等待任务完成文件的创建。
没有办法告诉publishing.publications等到另一个任务完成其 Action 之后再进行操作。

我的问题是,如果运行createFile任务,我只想发布此 Artifact 项目
gradle createFile     --> publish to artifactory
gradle someothertask --> don't publish

问题是,当我运行gradle someothertask
则文件/tmp/file.xml不存在,artifactoryPublish因找不到文件而失败。
我也不想有artifactoryPublish.dependsOn createFile
因为那样会使createFile每次运行。

最佳答案

您可以在gradle中添加任务依赖项。如果添加:

artifactoryPublish.dependsOn('createFile')

到build.gradle的根级别,它将确保在执行artifactoryPublish之前始终调用createFile任务,如果我正确地阅读了您的问题,它将确保在调用发布之前该文件始终可用。

关于gradle - 创建文件后gradle出版物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35994947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com