从终端构建应用程序时代码设计失败

Posted

技术标签:

【中文标题】从终端构建应用程序时代码设计失败【英文标题】:Codesigning failed when building app from terminal 【发布时间】:2014-11-24 15:31:37 【问题描述】:

我正在尝试在终端中使用xcodebuild 命令构建我的应用程序。但是它没有这样做,并给了我这个错误:

CodeSign build/Release-iphoneos/frameworkname.framework
    cd /path/frameworkname
    export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin"

Signing Identity:     "my signing identity"
Provisioning Profile: "provisioning profile"
                      (numbersandletters)

/usr/bin/codesign --force --sign numbersandletters /path/frameworkname/build/Release-iphoneos/frameworkname.framework
/path/frameworkname/build/Release-iphoneos/frameworkname.framework: bundle format unrecognized, invalid, or unsuitable
Command /usr/bin/codesign failed with exit code 1

** BUILD FAILED **

The following build commands failed:
    CodeSign build/Release-iphoneos/frameworkname.framework
(1 failure)

我在项目文件夹中使用这个命令:

xcodebuild -target myprojectname -sdk iphoneos -configuration Release

还尝试添加-project myprojectname.xcodeproj,但这并没有什么不同,我仍然遇到同样的错误。

我尝试了here 发布的脚本,但这对我也不起作用。我认为这是因为我的框架中没有 Versions 文件夹。这可能是一个开始的地方,但我不知道该怎么做。任何帮助将不胜感激:)

【问题讨论】:

无效的框架结构可能是调查的好主意。我会尝试用xctool 编译它 - 消息更清晰。 【参考方案1】:

尝试像这样构建:

security unlock-keychain -p aPassword /Users/aUser/Library/Keychains/login.keychain && \ 
xcodebuild -scheme 'aScheme' Release archive CODE_SIGN_IDENTITY="AcodeSignIdentity" PROVISIONING_PROFILE="aProvisioningProfile"

特别注意

1) 钥匙串解锁(如果您可以从 gui 解锁,则不需要)

2) 方案的使用

【讨论】:

【参考方案2】:

我们找到了一个可以构建我们的项目的解决方案。我们使用了这个命令

xcodebuild -project testerProject.xcodeproj -sdk iphoneos -configuration Release clean build RUN_CLANG_STATIC_ANALYZER=NO -scheme testerProject archive

【讨论】:

以上是关于从终端构建应用程序时代码设计失败的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 发布版本从终端失败

从 S3 下载工件时代码构建访问被拒绝

Flutter 应用程序 - 错误,Xcode **构建失败**

英孚教育全面上云与Serverless构建之路

请求失败,状态码 404 错误

如何从我的 Windows 笔记本电脑舒适地设计基于 Linux 的终端应用程序?