归档工件时发生错误

Posted

技术标签:

【中文标题】归档工件时发生错误【英文标题】:An ERROR occurred in archiving the artifacts 【发布时间】:2015-03-25 02:51:05 【问题描述】:

当我在文件中键入“build*.jar”以归档在归档工件中归档时,警告红色消息“build*.jar”与任何内容都不匹配:“build”存在但不是“build*.jar”出现。

我忽略它并构建后,出现以下错误:

Archiving artifacts
ERROR: No artifacts found that match the file pattern "build\*.jar". Configuration error?
ERROR: 'build\*.jar' doesn't match anything: 'build' exists but not 'build\*.jar'
Build step 'Archive the artifacts' changed build result to FAILURE
Finished: FAILURE

【问题讨论】:

请尝试 *\build.jar ... ** 指向您的工作区 @DevD 只是一个更正:** 表示any preceding path,其中可能包括$WORKSPACE,但不限于此。 所以如果我输入 'build/*.jar' j​​ar 文件应该出现在路径 'C:\Program Files (x86)\Jenkins\workspace\JavaTest\build' ?? 是的,没错。 【参考方案1】:

如果您想完全忽略工件部分,您可以在 Jenkins 中选择 如果归档不返回任何结果,则不要失败构建选项构建后操作 > 归档工件 > 高级设置

【讨论】:

如果您像我一样想知道如何在 DSL 中执行此操作,请使用“allowEmptyArchive: true”调用“archiveArtifacts”【参考方案2】:

请检查 build 是否是您的 Jenkins 项目工作区中的直接文件夹。例如,如果 target 是您的项目工作区的直接文件夹,则 target\*.jar 将归档目标文件夹中的所有 jar。另外,请尝试单击?了解更多

【讨论】:

感谢您的回答!但是在收到此错误消息之前,我已经在项目工作区下创建了“build”文件夹:( 工作区将被清理(如果每次都发生结帐)新的构建开始。那么,这个文件夹是您在构建之前手动创建的吗?此外,是否为每个构建从 SCM 签出任何代码?您使用的是自定义工作区而不是常规工作区吗?【参考方案3】:

可能发生的事情是\ 正在转义*,它正在寻找名为build*.jar 的文件。

我假设您使用的是 Windows,因此您使用的是 \ 分隔符。但是大多数 Windows 版本都支持/。先试试吧:build/*.jar

如果这不起作用,您可以首先尝试转义 \build\\*.jar

【讨论】:

我尝试了几种方法(包括'build/*.jar'、'build\*.jar'、'*.jar'...),但都没有奏效:(

以上是关于归档工件时发生错误的主要内容,如果未能解决你的问题,请参考以下文章

在 Jenkins 中执行 Artifacts 时存档文件压缩

ubuntu 装入归档文件时发生错误,是exe文件,和这有关系么??本人菜鸟,求指点

在 Jenkins Artifacts 中仅归档 aspx 页面

尝试归档 xcode 项目时出错

Jenkins存档单个文件不起作用

重命名存档工件的容器