问题标签 [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 回答
2331 浏览

jenkins - 为什么詹金斯会改变我的 gradlew,以及如何防止这种情况发生?

我正在尝试使用gradle release-plugin来“发布”我的项目

该插件首先检查我的工作副本是否干净,以便仅发布正确版本的内容。

这在我的本地机器上工作得很好。但是当我在 Jenkins 的工作中尝试同样的事情时,构建失败并抱怨工作场所中的各种东西发生了变化。我决定詹金斯在内部使用了很多东西并将其添加到gitignore

但它也认为gradlew改变了:

为什么詹金斯更改该文件我该如何防止?

我认为 Jenkins 工作的以下设置可能是相关的:

  • Checkout/merge to local branch (optional)设置为主。如果没有此设置,发布插件会抱怨不在分支上

  • Clean after checkout当前已选中,但选中/取消选中它没有任何区别

  • Make gradlew executable已检查,至少对我来说听起来像是一个可能的原因,但取消选中它会使构建失败,因为 gradlew 不可执行

0 投票
1 回答
634 浏览

jenkins-plugins - 使用 artifactory 插件从 Jenkins 部署 gradle 脚本

我正在尝试使用 gradle 插件的工件调用从 jenkins 部署构建并获得 HTTP 错误 302,通过日志看起来存在无法跳过的校验和问题:

13:35:41.463 [DEBUG] [org.jfrog.gradle.plugin.artifactory.task.BuildInfoBaseTask] 校验和“8d80bb7f1bf2f0457baa3ad7379348c5ecbf2535”的校验和部署失败,状态码:302 13:35:41.466 [DEBUG] [org.apache.http。 impl.conn.SingleClientConnManager] 获取路由连接 HttpRoute[{}->http://artifactory.edegem.eu.thmulti.com] .... 13:35:41.470 [DEBUG] [org.apache.http.impl .conn.DefaultClientConnectionOperator] 连接 13:35:41.503 [DEBUG] [org.apache.http.impl.conn.DefaultClientConnection] 接收响应:HTTP/1.1 302 Found

有什么线索吗?

非常感谢。

0 投票
1 回答
1051 浏览

android - 如何在 build.gradle 中引用系统 ProGuard 二进制文件?

我注意到gradle assembleRelease在过时的 ProGuard 版本上运行调用,从 shell 输出中可以看出:

我在我的使用以下配置build.gradle

如何将 gradle 指向可能从PATH例如/usr/local/bin/proguard?

另一种解决方案是引用所需的版本,如下所示:

你的设置是什么?

0 投票
1 回答
1051 浏览

gradle - Gradle uploadArchives 工件命名空间依赖于插件时

我有一个使用 Gradle 构建的 Android 应用程序。我正在使用gradle-release插件创建自动发布,然后使用 Gradle 的 uploadArchives 任务将生成的 .apk 上传到 Maven 存储库(Nexus)。

我必须添加档案以在运行时动态上传,因为我的构建使用的是自定义 Android 风格。当我从命令行运行 uploadArchives 时,一切正常:

然后我运行:

并且 .apk 已正确上传到 Nexus。

在发布插件自动更改项目的版本名称并提交之前,我需要运行 uploadArchives 任务。基本上:

为了实现这一点,我所做的是根据 uploadArchives 让 gradle-release 插件的 updateVersion 任务

好吧,当我这样做时,artifacts.archives。是空的,所以没有上传。

我怀疑,也许,由于我将uploadArchives任务添加为发布插件任务的依赖项,那么“命名空间”是不同的,所以基本上uploadArchives任务不使用artifacts.archives的“相同实例”,填充期间构建。

0 投票
1 回答
256 浏览

git - 在使用 Gradle-Git-Artifactory 堆栈的 Java 项目中存储发行说明的位置

我有几个相互依赖的 Java 项目,所有这些项目都使用Git进行源代码控制,使用Gradle进行构建和发布,并使用Artifactory作为二进制存储库。这些项目都是内部的,只在公司内部使用。

为他们存储发行说明的好地方是什么?我们当前的笔记到处都是——一些在 git 提交和标签中,一些在各种文本文件中。一定有更好的方法。

理想情况下,我想要一些可以作为简单步骤添加到 Gradle 发布任务的内容。而且我希望所有各种版本的注释都易于访问(例如,无需滚动浏览 git 提交历史记录)。

0 投票
1 回答
687 浏览

java - Gradle在bin目录中创建重复的启动脚本

我正在尝试通过 gradle 创建多个启动脚本文件。但不知何故,一个特定的启动脚本文件被重复了。

在 bin 目录中我可以看到,

  • 一只蝙蝠

  • 一只蝙蝠

  • B.sh

  • 蝙蝠

    我在这里想念什么?如何解决这个问题?

谢谢你的帮助。

0 投票
1 回答
798 浏览

git - gradle-release-plugin 没有标签,但在 CI 上生成版本

我们的项目中使用了一个 gradle release 插件,今天如果你运行 gradle release 它会执行我在下面列出的操作。

  • 构建代码并使用特定版本创建战争
  • 是否发布插件细节(vcs 更新检查、标记发布、自动升级版本并发布到 vcs)
  • 我们还有一个自定义步骤updateVersion.dependsOn createDbMigrationFile

我想在 CI (jenkins) 上构建并告诉它不要在 git 中标记但执行其余步骤,原因是我们的 DevOps 要求我们使用每个构建来升级版本(我无法更改)但是我没有t认为这是值得的标签。(#2)我想要一个单独的构建作业来执行标签、自定义步骤以及最后一个 TAG 构建的最终发布说明。

第二名的奖励积分但是我现在只是在“没有生成标签的构建”部分之后。

谢谢

0 投票
1 回答
6614 浏览

deployment - gradle-release 插件 + maven 发布插件

我正在以新的 gradle 用户身份创建 gradle 构建,但我过去曾与 maven 合作过。

我正在尝试重现 Maven 发布插件的操作:

  • 将分支版本更改为发布号(在 svn 提交)
  • 创建一个标签(在 svn)
  • 在 Nexus OSS 中部署发布标签
  • 将分支版本更改为新的快照编号(在 svn 提交)

如您所见,我正在使用:

  • Nexus OSS 作为版本控制存储库
  • SVN 作为单片机
  • 摇篮 (2.8)

我正在尝试使用这两个插件来实现我的目标:

  1. Gradle 发布插件

    • 将分支版本更改为发布号(在 svn 提交)
    • 创建一个标签(在 svn)
    • 将分支版本更改为新的快照编号(在 svn 提交)

    命令行:gradle release

  2. Maven 发布插件部署到 Nexus:

    命令行:gradle 发布

有什么想法可以生成一个版本并将其自动部署到 Nexus 上吗?

下面是我的build.gradle

0 投票
1 回答
2595 浏览

regex - gradle release plugin 自动版本模式

我正在将gradle-release-plugin与 jenkins 一起使用,我想使用

自动增加版本。

但是这个自动移动“.patch”号码(假设major.minor.patch版本),我试图移动“.minor”号码。

例如,如果发布 1.3.17,那么 newVersion 1.4.0-SNAPSHOT

我会在不使用 release.releaseVersionand的情况下更改此自动替换release.newVersion

可以通过插件配置来完成versionPatterns吗?

也许使用这种模式/[.]*\.(\d+)\.(\d+)[.]*/

0 投票
1 回答
1960 浏览

android - 发布未签名 apk 的 Android 安装错误

我尝试在发布版本类型上安装应用程序,但出现一般错误:“解析错误。解析包时出现问题”

安装调试 apk 成功。

使用 adb 安装发布 apk 会显示以下信息:

C:\android-sdk-windows\platform-tools>adb install app-release-unsigned.apk

2577 KB/s(0.608 秒内 1606360 字节) pkg:/data/local/tmp/app-release-unsigned.apk

失败 [INSTALL_PARSE_FAILED_NO_CERTIFICATES]

这是日志猫

V/ApplicationPolicy: isApplicationStateBlocked userId 0 pkgname com.android.packageinstaller I/ActivityManager: START u0 {act=android.intent.action.VIEW dat=file:///storage/emulated/0/Download/app-> > release- unsigned.apk typ=application/vnd.android.package-archive cmp=com.android.packageinstaller/.PackageInstallerActivity (has extras)} from uid 10019 on display 0

D/CustomFrequencyManagerService:acquireDVFSLockLocked:类型:DVFS_MIN_LIMIT 频率:1190400 uid:1000 pid:961 pkgName:ACTIVITY_RESUME_BOOSTER@4

W/ActivityManager:mDVFSHelper.acquire() D/InputDispatcher:焦点应用程序设置为:xxxx D/InputDispatcher:焦点左窗口:22409 /?D/MyFiles: FileUtils::update file open count D/DisplayManager: addAllDisplaysLocked() D/ActivityManager: 启动 com.android.packageinstaller,更新优先级 D/SSRM:a: DeviceInfo:: 000000000000 D/SSRM:a: SettingsAirViewInfo:: 000000000 /?

W/PackageInstaller:解析清单时出现解析错误。停止安装

模块 build.gradle: