java - 使用 Travis CI 和 Gradle 自动构建计数部署 jar 文件

标签 java github gradle build.gradle travis-ci

所以我弄清楚了 gradle 等是如何工作的。 我听说了 travis CI 并开始使用它。 现在我想要实现的最后一件事是让 gradle 创建源文件夹的 jar 文件并根据它们的内部版本号给出文件名,这样以前的文件都不会被覆盖。 我听说过 GitHub 部署的可能性,但我不确定这是否是我所需要的。 这可能吗?

最佳答案

这当然是可能的。

根据 the docs ,你需要在你的 .travis.yml 中有一个部分用于 部署。具体来说,您需要在存储库中创建标签时打开它,并且您需要告诉 Travis 不要丢弃任何东西 过早地。引用 deploy world 片段的文档:

deploy:
  provider: releases
  api_key: "GITHUB OAUTH TOKEN"
  file: "FILE TO UPLOAD"
  skip_cleanup: true
  on:
    tags: true

然后你的第二个问题如何将版本号放在二进制名称中:你需要将 file_glob: true 包含到 .travis.yml(详见 this question)。

我不太熟悉 Grunt 复制或重命名文件的功能,但您始终可以使用包含以下内容的 shell 脚本:

orig=origfile.jar
tag=$(git tag --points-at=$(git rev-parse HEAD))
cp "$orig" "${orig%.jar}_${tag}.jar"

关于java - 使用 Travis CI 和 Gradle 自动构建计数部署 jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36365744/

相关文章:

github - 如何使用部署 key 推送到 protected github 分支

spring - 让@Configurable 工作

java - 原因:javax.persistence.PersistenceException:无法解析持久单元根URL

java - 将节点名称作为参数从 java 代码传递给 .xsl 文件,以从与其节点名称对应的 .xml 文件获取值

java - 将相同的 servlet 配置到不同的映射并为每个映射设置不同的安全性

java - 我的代码运行,但当我比较两个数组的内容时,if 语句没有打印其内容

git - 在 Github 上触发特定的 Jenkins 作业推送到特定目录

java - 外部程序的退出值错误

github - 合并 GitHub 中的拉取请求后,Jenkins 将不会触发构建

android - react native “Application timeReportTool has not been registered”