【问题标题】:Uploaded War or Tar information is not printing on Jenkins console after upgrading to Gradle 6升级到 Gradle 6 后,上传的 War 或 Tar 信息未在 Jenkins 控制台上打印
【发布时间】:2020-05-23 15:47:53
【问题描述】:

我已将gradle4.6 更新为6.1,现在的问题是我在运行publishBootJavaPublicationToMavenRepository 任务时看不到任何打印在jenkins 控制台上的信息。

在此任务之后使用查看类似Upload: http://nexusblabla.war 的内容之前 但现在这个任务没有打印任何东西。

【问题讨论】:

  • 我们在最近从 3.4.1 升级到 6.0.1 的过程中遇到了一些可能相关的问题。我不确定,但我的印象是他们改变了引擎盖下的一些标准输出捕获。最初通过管道传输到 stdout 的内容现在可能只写入记录器。他们使用的消息传递架构仍然让我感到困惑,所以我很难调试这些东西......

标签: java spring-boot jenkins gradle build


【解决方案1】:

tl;博士

如果您只是想取回上传文件的日志消息,那么您必须使用 Gradle 的 --info 命令行选项。继续你的例子:

gradle --info publishBootJavaPublicationToMavenRepository

一些背景

我不知道为什么,但显然这些消息的日志级别在 Gradle 4.10 中已从 LIFECYLCE 更改为 INFO。发布时可以通过--debug 选项看到区别:

  • 使用 Gradle 4.9,您将获得:
11:44:55.666 [LIFECYCLE] [org.gradle.internal.resource.transfer.ProgressLoggingExternalResourceUploader] Upload http://127.0.0.1:8000/com/example/foo/1.0.0/foo-1.0.0.zip
  • 使用 Gradle 4.10.3,您将获得:
11:55:44.666 [INFO] [org.gradle.api.publication.maven.internal.action.LoggingMavenTransferListener] Uploading: com/example/foo/3.0.0/foo-3.0.0.zip to repository remote at http://127.0.0.1:8000/

不幸的是,发行说明或任何问题/提交中似乎都没有提及此更改 - 或者至少我找不到任何此类提及。为了完整起见,以下是 4.6 之后的 Gradle 版本的所有与控制台日志记录相关的发行说明条目:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 2019-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    • 2014-05-09
    相关资源
    最近更新 更多