heroku - 如何在不使用 gradle publish 命令的情况下发布 Gradle 工件

标签 heroku gradle amazon-s3 build build.gradle

我有多模块要求,其中模型类被其他模块称为 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/

相关文章:

php - Heroku 上的数据库名称和用户密码和主机

reactjs - Heroku Nodejs - react 错误部署应用程序

javascript - Angular 似乎没有运行

java - ConnectException(超时)使用 gradle 包装器运行 groovy Koans

java - 如何对多个对象设置S3存储桶策略?

git - 为什么找不到匹配的Mac:客户端hmac-md5,hmac-sha1

android - 添加 Firebase 依赖项后 Gradle 同步失败 : duplicate files during packaging of APK

java - 无法在 gradle 中添加依赖项(Android Studio)

apache-spark - 有什么方法可以使用 spark 从 s3 并行读取多个 Parquet 路径?

laravel - 在 AWS S3 上获取文件,而无需使用 Laravel 公开存储桶