尝试发布Pod后出现错误“ xcodebuild:返回失败的退出代码” [英] Error 'xcodebuild: Returned an unsuccessful exit code' after trying publishing Pod

查看:942
本文介绍了尝试发布Pod后出现错误“ xcodebuild:返回失败的退出代码”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

命令'pod trunk push --verbose'输出以下内容:

Command 'pod trunk push --verbose' outputs the following:

Build settings from command line:
CODE_SIGN_IDENTITY = -
SDKROOT = iphonesimulator10.1

=== CLEAN TARGET GTNetworkQualityChecker OF PROJECT Pods WITH CONFIGURATION Release ===

Check dependencies
** INTERNAL ERROR: Uncaught exception **
Uncaught Exception: *** -[__NSArrayM insertObject:atIndex:]: object cannot be nil
Stack:
  0   __exceptionPreprocess (in CoreFoundation)
  1   objc_exception_throw (in libobjc.A.dylib)
  2   -[__NSArrayM insertObject:atIndex:] (in CoreFoundation)
  3   -[XCCompilerSpecificationIBStoryboardLinker _outputNodesForInputNodes:withMacroExpansionScope:] (in DevToolsCore)
  4   -[XCCompilerSpecificationIBStoryboardLinker doSpecialDependencySetupForCommand:withInputNodes:withMacroExpansionScope:] (in DevToolsCore)
  5   -[XCCommandLineToolSpecification createCommandsforInputs:withMacroExpansionScope:] (in DevToolsCore)
  6   -[PBXTargetBuildContext invokeTask:forInputs:withMacroExpansionScope:optionTable:] (in DevToolsCore)
  7   -[XCDependencyGraphCreationContext invokeTask:forInputs:withMacroExpansionScope:optionTable:] (in DevToolsCore)
  8   -[XCCompilerSpecification computeDependenciesForInputNodes:ofType:variant:architecture:outputDirectory:withMacroExpansionScope:] (in DevToolsCore)
  9   -[XCCompilerSpecification computeDependenciesForFilePath:ofType:outputDirectory:withMacroExpansionScope:] (in DevToolsCore)
 10   -[XCBuildRuleDGSnapshot(DependencyGraphCreation) computeDependenciesForFilePath:ofType:forBuildFileReference:withOutputDirectory:parameterMacros:withMacroExpansionScope:] (in DevToolsCore)
 11   -[XCBuildRuleDGSnapshot(DependencyGraphCreation) computeDependenciesForBuildFileReference:withOutputDirectory:parameterMacros:withMacroExpansionScope:] (in DevToolsCore)
 12   -[XCSourcesBuildPhaseDGSnapshot(DependencyGraphCreation) _computeDependenciesForBuildFileReference:usingBuildRule:withMacroExpansionScope:processedPaths:] (in DevToolsCore)
 13   -[XCSourcesBuildPhaseDGSnapshot(DependencyGraphCreation) computeDependenciesForBuildFileReference:usingBuildRule:withMacroExpansionScope:] (in DevToolsCore)
 14   -[XCSourcesBuildPhaseDGSnapshot(DependencyGraphCreation) computeDependenciesForBuildFileReference:withMacroExpansionScope:] (in DevToolsCore)
 15   -[XCBuildPhaseDGSnapshot(DependencyGraphCreation) computeDependenciesForAllBuildFileReferencesWithMacroExpansionScope:] (in DevToolsCore)
 16   -[XCSourcesBuildPhaseDGSnapshot(DependencyGraphCreation) computeDependenciesForAllBuildFileReferencesWithMacroExpansionScope:] (in DevToolsCore)
 17   -[XCSourcesBuildPhaseDGSnapshot(DependencyGraphCreation) computeDependenciesWithMacroExpansionScope:] (in DevToolsCore)
 18   -[XCProductTypeSpecification computeDependenciesWithMacroExpansionScope:] (in DevToolsCore)
 19   -[XCNativeTargetDGSnapshot(DependencyGraphCreation) computeDependenciesWithMacroExpansionScope:] (in DevToolsCore)
 20   -[PBXTargetBuildContext createDependencyGraphWithTargetDGSnapshot:] (in DevToolsCore)
 21   -[PBXTargetBuildContext(DependencyGraphEvents) dg_setTargetSnapshot:] (in DevToolsCore)
 22   -[PBXTargetBuildContext(DependencyGraphEvents) processDependencyGraphEvents] (in DevToolsCore)
 23   -[XCBlockQueue _processNextBlockInThreadSlotNumber:] (in DevToolsCore)
 24   -[XCBlockQueue _processBlocksInThreadSlotNumber:] (in DevToolsCore)
 25   __NSThread__start__ (in Foundation)
 26   _pthread_body (in libsystem_pthread.dylib)
 27   _pthread_body (in libsystem_pthread.dylib)
 28   thread_start (in libsystem_pthread.dylib)

 -> GTNetworkQualityChecker (0.1.0)
    - ERROR | [iOS] xcodebuild: Returned an unsuccessful exit code.

[!] The spec did not pass validation, due to 1 error.

我有Xcode 8.1,Cocoapods v 1.2.0。 Pod的存储库位于此处

I've Xcode 8.1, Cocoapods v 1.2.0. Pod's repository is here.

任何人都可以告诉我是该问题的原因以及如何解决?

Could anybody tell me reason of that problem and how It may be fixed?

推荐答案

问题归结为您的podspec中的这一行:

The problem comes down to this line in your podspec:

s.source = { :git => 'https://github.com/Ar7Style/GTNetworkQualityChecker.git', :tag => s.version.to_s }

:tag 是问题所在。您当前的Pod验证不知道哪个提交代表您要发布的最终版本,即您的 0.1.0 版本。这就是为什么验证步骤引用的是您仓库的较旧版本(您确实有 FrameworkStoryboard.storyboard 现有删除之前)。

The :tag is the problem. Your current pod validation doesn't know which commit represents the definitive end of what you want to release, which would be your "0.1.0" version. That's why the validation step is referring to an older version of your repo (where you did have FrameworkStoryboard.storyboard existing before you deleted it).

换句话说,>您需要使用与您的版本号相对应的标签来标记Pod。

例如,在命令行上:

git tag '0.1.0' # the version number you're using for this release
git push --tags

然后执行上面显示的验证步骤:

Then do the validation step that I showed you up above:

pod spec lint --verbose GTNetworkQualityChecker.podspec

如果通过了,那么您应该进行 pod中继线推送-详细 c。

And if it passes, then you should do your pod trunk push --verbose.

这篇关于尝试发布Pod后出现错误“ xcodebuild:返回失败的退出代码”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆