相关疑难解决方法(0)

除非用户登录,否则钥匙串不会从Jenkins脚本解锁

我在OS X机器上运行Jenkins CI服务器.服务器作为标准用户'john'运行,并通过运行launchctl启动.该服务器所做的一件事是使用存储在钥匙串'xcode.keychain'中的密钥和证书来构建XCode项目:

Jenkins(根据活动监视器在用户'john'下运行)在用户按下Web界面上的按钮时从脚本调用这些命令.

security default-keychain -s /Users/john/Library/Keychains/xcode.keychain
security unlock-keychain -p password /Users/john/Library/Keychains/xcode.keychain
xcodebuild ...
Run Code Online (Sandbox Code Playgroud)

如果我碰巧通过UI以"john"身份登录到服务器,那么当Jenkins调用这些命令时,钥匙串会被正确解锁.但是,如果我没有登录,则xcode.keychain不会解锁并且构建失败.有任何想法吗?

macos xcode hudson keychain jenkins

31
推荐指数
3
解决办法
4万
查看次数

无法为Cordova iOS App生成发布版本

我正在使用Phonegap CLI 3.1XCode5.我想通过命令行为iPhone应用程序生成发布版本,我有有效的分发证书移动配置文件.我想完全通过命令生成发布版本,不想使用XCode GUI或Phonegap Build.我用xcodebuild,xcrun甚至corodva build命令都做了太多尝试,但它们都没有为我提供发布版本文件(无论是.app格式还是.ipa).

方法1(使用xcodebuild)

a) xcodebuild -project MyApp.xcodeproj -alltargets -sdk iphoneos7.0 PROVISIONING_PROFILE="PROFILE_UUID.mobileprovision" -configuration Release
Run Code Online (Sandbox Code Playgroud)

**BUILD FAILED**
以下构建命令失败:

CompileC build/MyApp.build/Release-iphoneos/MyApp.build/Objects-normal/armv7/AppDelegate.o MyApp/Classes/AppDelegate.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler

CompileC build/MyApp.build/Release-iphoneos/MyApp.build/Objects-normal/armv7/MainViewController.o MyApp/Classes/MainViewController.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler

CompileC build/MyApp.build/Release-iphoneos/MyApp.build/Objects-normal/armv7s/AppDelegate.o MyApp/Classes/AppDelegate.m normal armv7s objective-c com.apple.compilers.llvm.clang.1_0.compiler
( 3次失败)


方法2(使用corodova build和xcrun签署应用程序)

a) cordova build ios -release
Run Code Online (Sandbox Code Playgroud)

通过命令"/ Users/Macuser/Desktop/MyApp/platforms/ios/cordova/build"在平台"ios"上编译应用程序 - 发布平台"ios"编译成功.

b) xcrun -sdk iphoneos PackageApplication -v "build/Release-iphoneos/MyApp.app" -o "build/Release-iphoneos/MyApp.ipa" --sign "iPhone Distribution: NAME (ID)" --embed "PROFILE_UUID.mobileprovision"
Run Code Online (Sandbox Code Playgroud)

error: Failed …

xcode xcodebuild ios cordova xcrun

11
推荐指数
1
解决办法
1万
查看次数

在Cordova构建ios期间,代码签名错误未找到团队ID

在阅读了所有以前关于代码签名错误的帖子后,我已经达到了死胡同.使用ios平台(版本3.8.0)构建cordova项目(版本4.3.0)并使用Bamboo服务器进行持续集成.我无法让我的应用为该版本的iOS应用签名.这是我的构建任务的顺序:

  1. 解锁钥匙串(我已确保我的iPhone开发人员和分发证书有效且未过期.我还确保Bamboo服务器上没有弹出许可窗口,例如请求解锁钥匙串的权限.)
  2. cordova平台删除ios(清理目录并开始新鲜)
  3. 为ios添加插件
  4. cordova平台添加ios
  5. cordova build ios --release --device(构建设备的发布版本,最终上传到app store)
  6. xcrun嵌入了mobileprovision

我在上面运行#5任务时遇到此错误:

    === BUILD TARGET Abczyx OF PROJECT Abczyx WITH CONFIGURATION Release ===
    Check dependencies
    Code Sign error: No code signing identities found: No valid signing identities (i.e. certificate and private key pair) matching the team ID “(null)” were found.
    CodeSign error: code signing is required for product type 'Application' in SDK 'iOS 8.1'

    The following build commands failed:
    Check dependencies
    (1 failure)
    Error code 65 for command: xcodebuild …
Run Code Online (Sandbox Code Playgroud)

iphone xcode ios provisioning-profile cordova

3
推荐指数
1
解决办法
4607
查看次数