问题标签 [gradle-release-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6973 浏览

maven - 将版本存储在 build.gradle 中的 Gradle 发布插件

我正在将我的应用程序从 maven 转换为 gradle,并且我正在寻找 maven-release-plugin 替代 gradle。

我需要的插件是:

  • 从版本中删除“-SNAPSHOT”后缀并提交到 git repo
  • 在这个提交上创建新的 git 标签
  • build.gradle 中的凹凸版本(如 pom.xml),并添加“-SNASPHOT”后缀

我猜,最流行的是Gradle Release Plugin ( https://github.com/researchgate/gradle-release )。它工作得很好,但是,它将版本存储在一个单独的文件“gradle.properties”中。我需要将此版本存储在“build.gradle”文件中(如 pom.xml 中的版本)。

我还测试了以下插件,但它们也不将版本存储在 build.gradle 中:

是否有任何 Gradle 插件可以与“build.gradle”文件中的版本一起使用?

0 投票
1 回答
1367 浏览

jenkins - 当我尝试使用 gradle-release 插件构建时,为什么 Jenkins 会挂起?

我在我的 Grails 项目上设置了发布插件,并在我的本地主机上成功运行了它。

当我尝试在 Jenkins 中设置相同的构建时,构建会无限期地挂起。挂起之前输出中的最后一件事是checkCommitNeeded步骤。

我能做些什么来弄清楚出了什么问题?

如插件文档中所述,我已经在switch-Prelease.useAutomaticVersion=true中设置了两个版本参数。

更新

在 Researchgate Gitter 上,Christian Gonzalez 提到 Jenkins 正在检测由发布插件引起的另一个提交,并让自己陷入循环。对于 Git,可以添加一个额外的行为来忽略插件提交的更改。但是,我的项目使用的是 SVN。

更新

下面是添加 -d 的输出片段

11:12:48.907 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter] Executing actions for task ':checkCommitNeeded'. 11:12:48.908 [INFO] [org.gradle.api.Project] Running [svn, status] in [/var/lib/jenkins/jobs/MyTeam/jobs/MyProject/jobs/MyProject-release/workspace] 11:12:48.924 [INFO] [org.gradle.api.Project] Running [svn, status] produced output: [] 11:12:48.926 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':checkCommitNeeded' 11:12:48.926 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :checkCommitNeeded (Thread[Daemon worker,5,main]) completed. Took 0.02 secs. 11:12:48.926 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationWorkerRegistry] Worker root.3 completed (0 in use) 11:12:48.926 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationWorkerRegistry] Worker root.4 started (1 in use). 11:12:48.926 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :checkUpdateNeeded (Thread[Daemon worker,5,main]) started. 11:12:48.927 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] :myproject:checkUpdateNeeded 11:12:48.927 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Starting to execute task ':checkUpdateNeeded' 11:12:48.927 [DEBUG] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter] Determining if task ':checkUpdateNeeded' is up-to-date 11:12:48.927 [INFO] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter] Executing task ':checkUpdateNeeded' (up-to-date check took 0.0 secs) due to: Task has not declared any outputs. 11:12:48.927 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter] Executing actions for task ':checkUpdateNeeded'. 11:12:48.928 [INFO] [org.gradle.api.Project] Running [svn, status, -q, -u] in [/var/lib/jenkins/jobs/MyTeam/jobs/MyProject/jobs/MyProject-release/workspace] 11:12:51.477 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running 11:12:51.479 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry. 11:12:51.480 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired. 11:12:51.481 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry. 11:13:01.477 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running 11:13:01.477 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry. 11:13:01.478 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired. 11:13:01.480 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry. 11:13:11.477 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running 11:13:11.477 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry. 11:13:11.477 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired. 11:13:11.479 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry. ...

最后 4 行一遍又一遍地重复。

0 投票
1 回答
727 浏览

nexus - gradle release 插件 release-opinion

我正在尝试使用 gradle发布插件将我的工件部署在私有关系存储库上,但实际上我在上传存档过程中遇到了问题。

即使nexus以400回答,上传也到了最后,但在发布存储库中我发现每种发布甚至dev-*里程碑-*

我希望发布存储库上只有 rc-* 或最终版本,快照存储库上只有 dev-* 和里程碑-*

实际上我的配置是

我启动的命令是

但后来我在 nexus 发布存储库中找到了这个版本

3.31.3-dev.22.uncommitted+c6e4922

我希望在快照存储库中看到它而不是在发布中

谢谢你的时间

0 投票
1 回答
1180 浏览

jenkins - 将发布过程从 SNAPSHOT 更改为内部版本号

目前我们正在使用 axion-release-plugin 来控制我们的发布过程。现在我们想删除 SNAPSHOT 并在我们的发布过程中引入内部版本号。这样我们就可以实现CI。

基本上目前我们使用的是 1.0.0-SNAPSHOT 版本,现在我们需要来自 Jenkins 的 1.0.0-BUILDNUMBER 或 1.0.BUILDNUMBER 之类的东西。

请提供我们可以与 gradle 一起使用的任何解决方案或插件。

0 投票
2 回答
921 浏览

gradle - 使用 jenkins 将多个 aar 上传到 Nexus - gradle release

我需要上传从多模块项目生成的多个 aar。我的项目结构如下。

每个子模块都会生成 aar 文件,我需要将所有 aars 的发布版本上传到 Nexus 但是我不希望将 apk 上传到 Nexus。我正在传递所有来自 jenkins 的 nexus url 和 cred。

这是我的根 build.gradle

发布-build.gradle

子模块 build.gradle:

gradle clean build uploadArchives这成功地将我的所有快照 aars 上传到 Nexus。

gradle release- 它成功发布但没有上传任何东西到 Nexus 但是构建成功。

你能帮我解决我所缺少的吗?

0 投票
1 回答
2196 浏览

gradle - gradle-release 构建和发布非快照工件

我有一个多模块项目。而且,我希望能够做 gradle 发布并发布所有模块的所有工件。问题之一是当我包含插件时,我得到了 Task with name 'build' not found in root project ' 所以,按照互联网上的一些建议,我创建了一个构建任务并在其上添加了一堆依赖项:

当我跑步时,gradle tasks --all我得到

“释放”有效。也就是说,它会影响版本、标签、剥离“-SNAPSHOT”等。但是,这里缺少一个步骤(这可能完全是我的无知),但是在从版本中剥离“-SNAPSHOT”时,我需要它来构建工件并发布它们。这就像 Maven 发布过程,但没有工件上传。我目前正在使用 gradle 发布而不是 Maven 上传。

警告:对 gradle 来说很新,但对 java 不是很新,有人能告诉我我缺少什么吗?_

0 投票
2 回答
350 浏览

release - Bamboo 上的 gradle-release-plugin 发布任务导致无限循环

我使用 Bamboo 发布构建并将其发布到 Nexus。使用 maven-release-plugin 效果很好,但是在 Gradle 上,使用 gradle-release-plugin 我得到了无限循环。

构建计划任务成功后,Bamboo 检查 git,发现在先前版本中创建的 2 个新提交“[Gradle Release Plugin]”并一次又一次地启动。

如何让 Bamboo 忽略这些提交?

0 投票
2 回答
1768 浏览

git - SSH Git access using Gradle Release Plugin

Using Jenkins Pipeline I changed the Repository URL from http to ssh git access. After doing that the job is not working anymore (before that all worked correctly).

Down below the logs:

The SSH RSA Key is correctly working because: - I configured correctly on our Bitbucket server in order to Read/Write on that repo - I added the key into ssh-agent - I can clone and commit directly from the server where the jenkins job is executed.

This is the gradle build file section:

0 投票
1 回答
3130 浏览

android - 从 /tmp/gradle7963227675482339513.bin 中的二进制存储读取数据时出现问题(存在:true)

尝试将旧项目导入 android studio 时出现 Gradle refresh failed 错误。如何解决?谢谢。

错误:从 /tmp/gradle7963227675482339513.bin 中的二进制存储读取数据时出现问题(存在:true)

0 投票
1 回答
484 浏览

java - 在 Gradle Release 插件的 buildTasks 中使用子项目任务

我正在配置 Gradle Release 插件2.6.0并希望buildTasks按如下方式使用(它位于 root 中build.gradle):

为了只发布两个罐子。

但是,Gradle 无法配置项目报错如下:

在根项目“rootProject”中找不到名为“subprojectA:artifactoryPublish”的任务。

我该怎么做?

非常感谢你!