为了账号安全,请及时绑定邮箱和手机立即绑定

如何修复 fastlane 错误:找不到用于签名配置“externalOverride”

如何修复 fastlane 错误:找不到用于签名配置“externalOverride”

森林海 2023-07-13 15:32:14
我是 fastlane 新手,当我编写将应用程序部署到内部测试的命令时,它显示以下错误:FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:validateSigningRelease'.> Keystore file '/Users/rooh/.gradle/daemon/5.1.1/keystore.jks' not found for signing config 'externalOverride'.* Try:Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.* Get more help at https://help.gradle.orgDeprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.Use '--warning-mode all' to show the individual deprecation warnings.See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings看来错误是因为密钥库的位置,我已经将密钥库放在项目的应用程序文件中,我在其他项目中这样做了并且它工作正常,但在这里我不知道为什么它不起作用我也尝试更改密钥库位置,但仍然fastfile 中的这条通道:desc "Deploy a new internal version to the Google Play Store"lane :internal dogradle(task: "clean")gradle(  task: "assemble",  build_type: "Release",  print_command: false,  properties: {    "android.injected.signing.store.file" => "keystore.jks",    "android.injected.signing.store.password" => "*****",    "android.injected.signing.key.alias" => "alias",    "android.injected.signing.key.password" => "*****"    })changelog = prompt(text: "Changelog: ",multi_line_end_keyword: "END")supply(  track: "internal",  apk: lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH].to_s)upload_to_play_store(track: "internal")end
查看完整描述

3 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

我必须提供完整的文件路径作为"android.injected.signing.store.file".

另外,~/没有工作;我需要明确地阐明完整的文件路径。


查看完整回答
反对 回复 2023-07-13
?
皈依舞

TA贡献1851条经验 获得超3个赞

信息:对于其他用户:


您可以创建多个 ENV 变量,这对于 CI 很有用。


build_android_app(

      task: "assemble", 

      build_type: "Release", 

      flavor: "development",

      flags: "--stacktrace",

      print_command: false,

      properties:{

        "android.injected.signing.store.file" => ENV['KEYSTORE_PATH'],

        "android.injected.signing.store.password" => ENV['STORE_PASSWORD'],

        "android.injected.signing.key.alias" => ENV['KEY_ALIAS'],

        "android.injected.signing.key.password" => ENV['KEY_PASSWORD'],

        "org.gradle.java.home" => ENV['JAVA_HOME']

      })

稍后您需要修改 .bash_profile 并添加 ENV 变量。


查看完整回答
反对 回复 2023-07-13
?
森栏

TA贡献1810条经验 获得超5个赞

Flutter + Fastlane + GitHub 操作

我遇到了同样的问题,就我而言,我可以通过将密钥库文件放在./android/fastlane/./android/app/fastlane/文件夹中来使其工作。

这是因为我的 Fastlane 配置位于./android/fastlane/文件夹内,但是,当您运行build_android_app / gradle./android/app/任务时,它会默认尝试获取文件夹中的密钥库文件,并且您不能告诉它执行其他操作,除非您使用绝对路径(这不是一个好的做法),因为 Fastlane 任务无法解析相对路径。此外,如果我从文件夹中删除密钥库文件./android/fastlane/,它会抱怨,即使它存在于./android/app/fastlane/.


查看完整回答
反对 回复 2023-07-13
  • 3 回答
  • 0 关注
  • 158 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信