2014-09-05 108 views
13

我正在使用xcode插件。 我环顾四周,但大部分“解决方案”都没有奏效。Xcodebuild在jinkkins与cocoapods失败

我的主要问题是,在生成的xcworkspace中,没有针对我正在尝试构建的项目的方案。该插件确实命令

$ /usr/bin/xcodebuild -list -workspace Project.xcworkspace

和输出只显示波德的方案,而不是主要的项目方案。

Information about workspace "Project": Schemes: Pods Pods-AFNetworking Pods-Bolts Pods-Facebook-iOS-SDK

我有的CocoaPods与pod install

我把这个作为Xcode的插件CONFIGS buildstep:目标:项目,构建,配置前清洁:调试时,Xcode架构文件:项目,Xcode的工作区文件:项目,构建输出目录:$ {WORKSPACE}/build。

这是一个被打印出来的错误:

Going to invoke xcodebuild:, scheme: Project, sdk: DEFAULT, workspace: Project, configuration: Debug, clean: YES, archive:NO, symRoot: DEFAULT, configurationBuildDir: /Users/ignat/.jenkins/workspace/Project/build, codeSignIdentity: DEFAULT 
[Project] $ /usr/bin/xcodebuild -scheme Project -workspace Project.xcworkspace -configuration Debug clean build CONFIGURATION_BUILD_DIR=/Users/ignat/.jenkins/workspace/Project/build 
Build settings from command line: 
    CONFIGURATION_BUILD_DIR = /Users/ignat/.jenkins/workspace/Project/build 

xcodebuild: error: The workspace 'Project' does not contain a scheme named 'Project'. 
FATAL: Build directory does not exist at /Users/ignat/.jenkins/workspace/Project/build. Potential configuration issue. 
Build step 'Xcode' marked build as failure 
Finished: FAILURE 

回答

19

由于xcodebuild -list输出说,你的工作空间只对舱体方案。

如果您的Jenkins实例将您的项目从存储库中提取,那么很可能您不会将Project方案分享给每个人。

要解决此问题,您需要为所有使用回购的用户分享您的方案。在Xcode中,单击计划名称以打开菜单方案(左上角),然后选择“管理方案......”

Manage schemes menu

在管理计划对话框中,确保该计划你想通过检查右侧的“共享”框,向所有用户分享与Jenkins一起构建的内容。

Manage Schemes dialog

Project方案应该詹金斯后上市。

+0

该方案应该放在容器Project项目还是Pods项目中? – Ignat 2014-09-05 16:38:24

+0

它属于Project项目,因为Pods项目只管理窗格,而Project项目管理项目的所有源文件和设置。 – LodeRunner 2014-09-05 16:41:14

+0

这个“计划”信息不应该在工作区中吗? – Ignat 2014-09-05 17:27:09