执行fastlane beta命令时遭遇'invalid curve name'错误求助
解决fastlane pilot步骤"invalid curve name"错误的方法
核心原因
这个错误是因为OpenSSL无法正确解析你提供的API私钥,通常是私钥格式不正确导致的。
具体修复步骤
1. 修正API私钥的格式
你的store.json中key字段的私钥是整行的,这会导致解析失败。必须将私钥格式化为带换行的标准格式:
- 确保
-----BEGIN PRIVATE KEY-----和-----END PRIVATE KEY-----各自单独占一行 - 中间的密钥内容每64个字符换行一次
- 在JSON字符串中,换行需要用
\n转义
修正后的store.json示例:
{ "key_id": "SDQ5X4RCX7", "issuer_id": "59a6de75-ee64-37e3-e053-5b8c7c11a4d1", "key": "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM43AgEGAAqGSM49AwEHBHkwdwIBAQQgGzrTJoXrDyFXixa7\nz/XhbzOADMnFSRj/7ynH0SLZILygCgYIKoZIzj0DAQehRANCAARqsnZeZYe+TuKC\ntHSq5fk4zNzo9SyAkHjLV605s5qN6EBBNrjSf3FMmQDIGWNncPyY35CUcHwmmq6n\nAwG2UqGw\n-----END PRIVATE KEY-----" }
2. 升级OpenSSL版本
旧版本的OpenSSL对椭圆曲线密钥的支持存在问题,执行以下命令检查版本:
openssl version
如果版本低于1.1.0,建议升级到1.1.x或3.x版本后重试。
3. 重新生成API密钥
如果格式修正后仍报错,可能是密钥本身损坏。前往Apple Developer后台,重新生成一个新的API密钥(类型选择App Store Connect API),下载.p8文件后,将文件内的完整内容按正确格式复制到store.json中。
4. 更新fastlane到最新版本
旧版本fastlane可能存在API密钥解析的bug,执行以下命令更新:
fastlane update_fastlane
完成以上步骤后,重新运行fastlane beta即可。
内容的提问来源于stack exchange,提问作者Oleksandr Matrosov
相关产品推荐
相关产品推荐

