首页 > 解决方案 > Azure Artifacts - 下载 Maven 包内容会引发 azure UnhandledPromiserejectionWarning

问题描述

我们的一个开发团队最近将他们的 Maven 项目文件从另一个版本控制系统迁移到 Azure DevOps。然而,一个主要的警告是这些 Maven 项目是在没有 POM 文件的情况下创建的(我不知道为什么)。

在任何情况下,项目团队都设法将他们所有的 Maven 包移动到 Azure Artifacts 中。然后运行发布管道作业时,预计会从 Azure 工件检索所需的工件(*.war 文件),下载到代理的工件目录,然后部署到目标服务器。管道本身已成功完成(所有任务都设置为绿色状态),但是当我们查看输出日志时,我们发现工件从未下载过,相反,下载任务返回“UnhandledPromiserejectionWarning”。知道为什么会这样吗?

到目前为止,我们已经尝试使用 CURL 作为下载工件的替代方法,但一切都是徒劳的。当然,我们也尝试过 Azure Artifacts 的专用“下载包”管道任务但失败了,但如果有人有一些好的建议,我们愿意尝试替代解决方案。一直想知道 Powershell(或其他脚本)之类的东西可以用来下载所需的包文件。

我还必须提到,CURL 选项似乎只能对失败的 OAuth 身份验证进行故障转移。这方面的任何建议也会有所帮助,因为这可能是我们解决问题的最快途径。

标签: mavenazure-pipelinespom.xmlazure-artifactsazure-pipelines-tasks

解决方案


我有一个类似的问题,原来问题只是大写的情况。DownloadPackage 任务试图下载 0.0.30-SNAPSHOT,但您只能将包下载为 0.0.30-snapshot,正如microsoft 官方文档中所述。

为了修复它,我必须安装一个外部插件,然后在下载之前添加一个额外的任务,该任务是将名称转换为小写。

顺便说一句,我使用的是经典的发布管道。

在此处输入图像描述


推荐阅读