xcodebuild : error: 'file' is not a workspace file

标签 xcode jenkins workspace xctest

没有问题,但现在我在 Jenkins CI 中的工作失败了。我尝试重命名 Xcode 工作区,例如 RacingPost.xcworkspace,但没有任何更改。尝试完全删除此选项,此作业也失败了。

配置:

XCODEPROJECTDIRECTORY=.
TARGET_BUILD_DIR=${XCODEPROJECTDIRECTORY}/build
XCODEWORKSPACE=RacingPost.xcodeproj
XCODESCHEME=UnitTests
XCODECONFIGURATION=ENTERPRISE-HD
XCODESDK=iphoneos
XCODEARGS="TEST_AFTER_BUILD=YES"
XCODEBUILD_APP_NAME=RacingPost.app
XCODETARGET=UnitTests
XCODEPROJECT=RacingPost.xcodeproj
IPA_PATH=${TARGET_BUILD_DIR}/RacingPost.ipa

xcrun -sdk iphoneos PackageApplication -v "$(${XCTOOL_HOME}/xctool.sh -scheme RacingPost -project   ${XCODEPROJECT} -configuration "${XCODECONFIGURATION}" -sdk  "${XCODESDK}" -showBuildSettings -workspace   ${WORKSPACE}| grep TARGET_BUILD_DIR | cut -d = -f 2 | cut -d . -f 1 | head -1 | sed 's/^[ ^t]*//')/${XCODEBUILD_APP_NAME}" -o "${IPA_PATH}"

输出:

17:33:25 ** BUILD SUCCEEDED ** (58104 ms)
 17:33:27 [RGP-ODC_RacingPost_iPad_staging] $ /bin/bash -xe /var/folders/df/575wx61n4dzdlw_48pgsjwk40000gn/T/hudson6052564280091633098.sh
17:33:27 + cd .
17:33:27 ++ /Users/epadmin/ci-tools/xctool/xctool.sh -scheme RacingPost -project RacingPost.xcodeproj - configuration ENTERPRISE-HD -sdk iphoneos -showBuildSettings -workspace /Users/epadmin/jenkins-slave/workspace/RGP- ODC_RacingPost_iPad_staging
17:33:27 ++ grep TARGET_BUILD_DIR
17:33:27 ++ cut -d = -f 2
17:33:27 ++ cut -d . -f 1
17:33:27 ++ head -1
17:33:27 ++ sed 's/^[ ^t]*//'
17:33:30 xcodebuild: error: '/Users/epadmin/jenkins-slave/workspace/RGP-ODC_RacingPost_iPad_staging' is not a workspace file.
17:33:30 + xcrun -sdk iphoneos PackageApplication -v /RacingPost.app -o ./build/RacingPost.ipa
17:33:30 error: Specified application doesn't exist or isn't a bundle directory : '/RacingPost.app'
17:33:30 Build step 'Execute shell' marked build as failure

我的节点上的文件夹结构:

epadmin@epclus1macp02:~/jenkins-slave/workspace/RGP-ODC_RacingPost_iPad_staging$ ls

drwxr-xr-x  21 epadmin  staff   714B May 29 10:28 ./
drwxr-xr-x  37 epadmin  staff   1.2K May 29 10:33 ../
drwxr-xr-x   7 epadmin  staff   238B May 29 10:28 .svn/
drwxr-xr-x  10 epadmin  staff   340B Apr 18 09:02 RacingPost/
drwxr-xr-x  10 epadmin  staff   340B May 29 09:27 RacingPost.xcodeproj/
drwxr-xr-x  10 epadmin  staff   340B May  7 09:04 RacingPostUtilApp/
drwxr-xr-x   3 epadmin  staff   102B May 18 02:16 Source/
drwxr-xr-x  75 epadmin  staff   2.5K Apr 16 09:03 UnitTests/
drwxr-xr-x  16 epadmin  staff   544B May 29 09:05 _certs/
drwxr-xr-x   3 epadmin  staff   102B Apr 15 09:03 _doc/
drwxr-xr-x   4 epadmin  staff   136B Apr 15 09:03 _provisioning/
drwxr-xr-x   3 epadmin  staff   102B May 29 10:31 build/
-rw-r--r--   1 epadmin  staff   9.9K May 19 04:39 build.xml

最佳答案

不要使用XCODEWORKSPACE=RacingPost.xcodeproj。您没有工作区文件。您不是从工作区构建的。您正在从项目构建。

关于xcodebuild : error: 'file' is not a workspace file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23951059/

相关文章:

objective-c - 什么是 ObjectiveC.gcno?它应该包含在源代码存储库中吗?

java - 使用 Jenkins 构建的常用方法

XCode 7.3 - 工作区使用

r - 加载工作区时出现 "bad magic number"错误的原因以及如何避免?

ios - 循环优化/CoreData优化

ios - 模块 XXX 未使用库演化支持构建

xcode - XCode 7崩溃报告。我该怎么读? UIKit:forwardTouchMethod

version-control - Jenkins 我如何上传文本文件并将其用作参数

master 的 jenkins 运行多个下游作业

ios - 我们可以使用 swift3.0 将一个项目 View Controller 类用于同一工作区中的另一个项目吗