【发布时间】:2015-07-18 14:42:05
【问题描述】:
我正在尝试使用 jenkins Xcode 插件构建 iOS 应用程序。不幸的是,它失败并出现错误
stringRep should be a non-empty string, but it's an empty string
下面我放了全栈。当我跑步时
/usr/bin/xcodebuild -list -workspace project.xcworkspace
在终端中,它给出了正确的输出。
== Available schemes
[repository] $ /usr/bin/xcodebuild -list -workspace project.xcworkspace
2015-07-18 15:33:40.533 xcodebuild[39418:3378293] [MT] DVTAssertions: ASSERTION FAILURE in /SourceCache/DVTFrameworks/DVTFrameworks-7714/DVTFoundation/MacroExpansion/DVTMacroDefinitionConditionSet.mm:153
Details: stringRep should be a non-empty string, but it's an empty string
Object: <DVTMacroDefinitionConditionSet>
Method: +conditionSetFromStringRepresentation:getBaseMacroName:error:
Thread: <NSThread: 0x7f909152e100>{number = 1, name = main}
Hints: None
Backtrace:
0 0x0000000102a27c07 -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
1 0x0000000102a2765f _DVTAssertionHandler (in DVTFoundation)
2 0x0000000102a2794e _DVTAssertionFailureHandler (in DVTFoundation)
3 0x00000001029b581e +[DVTMacroDefinitionConditionSet conditionSetFromStringRepresentation:getBaseMacroName:error:] (in DVTFoundation)
4 0x000000010475f062 -[DVTMacroDefinitionTable(XCMacroExpansionExtensions) _xc_setValue:forMacroName:errorHandler:] (in DevToolsCore)
5 0x000000010475f6a9 __108-[DVTMacroDefinitionTable(XCMacroExpansionExtensions) xc_setMacroNamesAndValuesFromDictionary:errorHandler:]_block_invoke (in DevToolsCore)
6 0x00007fff8fec21f5 __65-[__NSDictionaryI enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke (in CoreFoundation)
7 0x00007fff8fec2119 -[__NSDictionaryI enumerateKeysAndObjectsWithOptions:usingBlock:] (in CoreFoundation)
8 0x000000010475f585 -[DVTMacroDefinitionTable(XCMacroExpansionExtensions) xc_setMacroNamesAndValuesFromDictionary:errorHandler:] (in DevToolsCore)
9 0x0000000104762109 -[NSProcessInfo(XCMacroExpansionExtensions) xc_cachedEnvironmentAsMacroDefinitionTable] (in DevToolsCore)
10 0x00000001045357fa -[PBXTarget createMacroExpansionScopeWithBuildParameters:] (in DevToolsCore)
11 0x0000000104537bd2 -[PBXTarget cachedMacroExpansionScopeForBuildParameters:] (in DevToolsCore)
12 0x000000010454c903 -[PBXTarget expandedValueForString:forBuildParameters:] (in DevToolsCore)
13 0x00000001045c1869 -[PBXNativeTarget fullProductNameForConfigurationNamed:] (in DevToolsCore)
14 0x0000000104545d40 -[PBXTarget fullProductName] (in DevToolsCore)
15 0x0000000104505deb -[PBXReference setProducingTarget:] (in DevToolsCore)
16 0x000000010454a480 -[PBXTarget awakeFromPListUnarchiver:] (in DevToolsCore)
17 0x00000001045c2616 -[PBXNativeTarget awakeFromPListUnarchiver:] (in DevToolsCore)
18 0x00007fff8fe6f376 -[NSArray makeObjectsPerformSelector:withObject:] (in CoreFoundation)
19 0x000000010451c864 -[PBXPListUnarchiver decodeRootObject] (in DevToolsCore)
20 0x00000001044e79e0 +[PBXProject projectWithFile:errorHandler:readOnly:] (in DevToolsCore)
21 0x00000001047146ad -[Xcode3Project initWithFilePath:extension:workspace:options:error:] (in DevToolsCore)
22 0x000000010317c71d __82+[IDEContainer _retainedContainerAtFilePath:fileDataType:workspace:options:error:]_block_invoke_2 (in IDEFoundation)
23 0x00007fff91860c13 _dispatch_client_callout (in libdispatch.dylib)
24 0x00007fff91861e5e _dispatch_barrier_sync_f_invoke (in libdispatch.dylib)
25 0x0000000102a609cd DVTDispatchBarrierSync (in DVTFoundation)
26 0x000000010285beb4 -[DVTDispatchLock performLockedBlock:] (in DVTFoundation)
27 0x000000010317c129 __82+[IDEContainer _retainedContainerAtFilePath:fileDataType:workspace:options:error:]_block_invoke (in IDEFoundation)
28 0x0000000102994ace __58-[DVTModelObjectGraph performBlockCoalescingModelChanges:]_block_invoke (in DVTFoundation)
29 0x0000000102a1933a -[DVTModelGraphTransactionScope performTransaction:] (in DVTFoundation)
30 0x00000001029949d9 -[DVTModelObjectGraph performBlockCoalescingModelChanges:] (in DVTFoundation)
31 0x000000010317beb2 +[IDEContainer _retainedContainerAtFilePath:fileDataType:workspace:options:error:] (in IDEFoundation)
32 0x0000000102e6b8f5 +[IDEContainer retainedContainerAtFilePath:fileDataType:workspace:error:] (in IDEFoundation)
33 0x00000001031419dc -[IDEFileReference _recalculateReferencedContainer] (in IDEFoundation)
34 0x0000000102e7e27b -[IDEFileReference referencedContainer] (in IDEFoundation)
35 0x000000010317a9da __62-[IDEContainer _scheduleResolvePendingFileReferencesOperation]_block_invoke (in IDEFoundation)
36 0x00000001029a00c8 -[_DVTAsynchronousRequest _invokeBlock:] (in DVTFoundation)
37 0x00007fff90aa941b __NSFireDelayedPerform (in Foundation)
38 0x00007fff8feb52e4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ (in CoreFoundation)
39 0x00007fff8feb4f73 __CFRunLoopDoTimer (in CoreFoundation)
40 0x00007fff8ff2853d __CFRunLoopDoTimers (in CoreFoundation)
41 0x00007fff8fe70608 __CFRunLoopRun (in CoreFoundation)
42 0x00007fff8fe6fbd8 CFRunLoopRunSpecific (in CoreFoundation)
43 0x0000000102996f0b +[DVTKVOConditionValidator waitForCondition:sourceObject:keyPathAffectingConditionBlock:timeout:] (in DVTFoundation)
44 0x000000010358c7e3 -[Xcode3CommandLineBuildTool _resolveInputOptionsWithTimingSection:] (in Xcode3Core)
45 0x000000010359c685 -[Xcode3CommandLineBuildTool run] (in Xcode3Core)
46 0x00000001028509be (in xcodebuild)
47 0x00007fff8b5b45c9 start (in libdyld.dylib)
48 0x0000000000000004
我有最新的 Xcode。感谢任何帮助,谢谢
【问题讨论】:
-
嗨。检查应用程序中的方案(产品->方案->管理方案),它们必须是共享的(复选框“共享”)。如果没有,则需要进行共享,然后将更改提交到 repo。
-
@Mozilla,已经检查过了,它们是共享的:/
-
检查下一个 - 从新文件夹中的版本控制存储库中检查您的项目,然后再次打开并检查方案。看起来您的共享方案不在 git (svn) 下。您能否提供有关您的项目结构的更多信息(可能来自 xcode - 目标、工作区的屏幕截图)? + 来自 Jenkins 的构建步骤信息。
-
@Mozilla - 方案是共享的,而且它们肯定在控制之下,因为我使用了一些云 - 解决方案,在那里我检查了我的存储库并且它需要共享方案,所以这是肯定的.在我的 jenkins 中,我基本上在上一步中从 git 中签出项目,然后我使用“执行 shell”提取一些子模块并手动运行 pod install。之后,我运行使用 xcode 构建插件的作业。正如我所说,我试图从命令行在签出的文件夹中运行相同的命令(xcodebuild -list ...),它在那里很好。您可能会发现目标/工作区的哪些详细信息有用?
-
小更新,我正在尝试构建的任何其他项目都会出现同样的问题。