Xcode 10归档失败-仅在命令行(xcodebuild)

时间:2018-10-07 11:22:07

标签: ios cocoapods xcodebuild xcode10 archiving

我在CI机器(Jenkins)上进行归档时遇到问题,当在SAME机器上使用Xcode UI手动运行过程时,一切正常。

我得到的错误是:

<unknown>:0: error: cannot have input files with file list

** ARCHIVE FAILED **


The following build commands failed:
    CompileSwift normal armv7
    CompileSwiftSources normal armv7 com.apple.xcode.tools.swift.compiler
    CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler
    CompileSwift normal arm64
(4 failures)

在失败时执行的原始命令非常长(68K +个字符),在这里它已从所有pod /应用信息中删除:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift @/var/folders/cc/h3hp1kt14rv3j5t_lybwwgqh0000gp/T/arguments-ece6e3.resp # -frontend -c -filelist /var/folders/cc/h3hp1kt14rv3j5t_lybwwgqh0000gp/T/sources-e4a704 -supplementary-output-file-map /var/folders/cc/h3hp1kt14rv3j5t_lybwwgqh0000gp/T/supplementaryOutputs-4e5601 -target arm64-apple-ios10.0 -Xllvm -aarch64-use-tbi -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk  -g -module-cache-path / ... /ModuleCache.noindex -swift-version 4 -O -D RELEASE -serialize-debugging-options ...  -module-name APPNAME -num-threads 8 -output-filelist /var/folders/cc/h3hp1kt14rv3j5t_lybwwgqh0000gp/T/outputs-3df91d

更多信息:

  1. 使用Cocoapods 1.5.3(也复制了最新的1.6.0_beta.1)
  2. 使用“旧版构建系统”
  3. 我要存档的确切命令是: xcodebuild -scheme APPSCHEME -workspace APPNAME.xcworkspace -configuration Release clean build archive -derivedDataPath "../build" -archivePath "../build/APPNAME.xcarchive"

只是让事情变得更加有趣,当在本地计算机上运行archive命令时,我没有看到任何故障...非常奇怪且不一致。

任何帮助将不胜感激!

4 个答案:

答案 0 :(得分:0)

最终我弄清楚了,它看上去确实无关紧要,但这是唯一为我解决了所描述问题的东西。

转到您的构建设置,然后删除在那里存在的所有递归搜索路径。而已。 (任何以**结尾的搜索路径都是递归的。)

祝你好运!

答案 1 :(得分:0)

出现此错误的一种相关情况是通过运行:

xcodebuild -scheme sharetec build

在我的情况下,我只需要调整一些这样的参数:

xcodebuild -workspace [WP_NAME].xcworkspace -scheme [A_TARGET] -sdk iphoneos clean build

所以错误消失了。

答案 2 :(得分:0)

使用AppCenter时出现此问题。我选择了与项目部署目标不同的xcode版本。

答案 3 :(得分:0)

我在做同样的事情:

xcodebuild -workspace ABC.xcworkspace -scheme SCHEME_NAME archive -archivePath ABC.xcarchive

我通过剥离-archivePath及其参数解决了该问题。