Jenkins和Xcode 8:无法复制PNG文件

时间:2016-10-12 01:51:25

标签: ios xcode jenkins png jenkins-plugins

尝试将Xcode 8与Jenkins一起使用时出现此错误。从来没有这样,并且在同一台机器上的Xcode 8编译得很好,所以我们只能在Jenkins中得到它。有人知道为什么吗?我们正在使用Xcode Integration插件v1.4.11进行iOS构建作业。

这是Jenkins日志中的错误消息:

15:04:16 ** BUILD FAILED **
15:04:16 
15:04:16 
15:04:16 The following build commands failed:
15:04:16    CopyPNGFile /Users/Shared/Jenkins/Home/jobs/Project_iOS_Build_Release_Branch/workspace/builds/dev_staging/SomeAssets.bundle/icon_cart.png SomewPod/Something/Assets/icon_cart.png

我发现这似乎发生在pod资产包中的所有资产,无论哪一个。出于某种原因,在使用Jenkins进行编译时,pod资产不会复制到Jenkins临时工作空间位置。

周围的任何Jenkins / Xcode专家对此有何了解?这个问题严重影响了我们的构建管道。

编辑:我发现此命令首先在Jenkins中失败:

/Applications/Xcode.app/Contents/Developer/usr/bin/copypng -compress -strip-PNG-text /Users/Shared/Jenkins/Home/jobs/iOS_Test/workspace/Pods/FooPod/Foo/Assets/foo.png /Users/Shared/Jenkins/Home/jobs/iOS_Test/workspace/builds/dev_staging/FooAssets.bundle/foo.png

但是当我在终端中运行它时,它会成功执行并复制文件。詹金斯为什么会突然失败?

EDIT2:

我在Jenkins日志输出中偶然发现了这一行:

execvP: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin: path too long

Jenkins似乎存在长路径名称的问题。这可以解释为什么这个问题只发生在Jenkins,而不是Xcode。

由于我无法减少路径名字符长度,我想知道这个Jenkins问题是否有任何已知的解决方法?

0 个答案:

没有答案