我有多模块要求,其中模型类被其他模块称为 gradle 依赖项。我正在手动使用 gradle publish 命令。但是在多贡献者环境中,人们忘记了这样做,并且托管在 S3 中的工件没有得到新的发布。
所以,我正在考虑让它在 CI 或 heroku dynos 中部署。我知道在 Maven 中我们在构建阶段本身指定。但我是 Gradle 新手,对它了解不多。
你能建议我这样做吗?
感谢您的时间。
最佳答案
首先我们需要创建一个发布任务:
发布{
存储库{
maven {
url "s3_url"
credentials(AwsCredentials) {
accessKey "acccess_key"
secretKey "secret_key"
}
}
}
publications {
mavenJava(MavenPublication) {
groupId 'com.example.common'
artifactId 'common'
version '1.0'
from components.java
}
}
}
然后下面的命令就成功了:
build.finalizedBy(发布)
因此,在构建阶段结束时,工件会自动发布到 s3,无论是从远程运行还是从 CI(在我的例子中是 Heroku)运行。
关于heroku - 如何在不使用 gradle publish 命令的情况下发布 Gradle 工件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44832931/