.NET MAUI Android 构建在 GitHub 操作上失败,jarsigner.exe 退出并显示代码 1

问题描述 投票:0回答:1

总结:

我正在尝试使用 GitHub Actions 构建并签署 .NET MAUI Android 应用程序。虽然一切都在我的本地计算机上完美运行,并且 GitHub Actions 工作流程顺利运行到签名阶段,但我在 GitHub Actions 上的构建过程中遇到了与 jarsigner.exe 相关的错误。

问题:

错误信息

C:\Program Files\dotnet\packs\Microsoft.Android.Sdk.Windows\33.0.68\tools\Xamarin.Android.Common.targets(2335,2): error MSB6006: "jarsigner.exe" exited with code 1. [D:\a\App.name\App.name\App.name\App.name.csproj::TargetFramework=net7.0-android]

工作流程的最后一部分

- name: Setup Java
  uses: actions/setup-java@v3
  with:
    distribution: 'microsoft'
    java-version: '17'

- name: Build
  run: dotnet build App.name/App.name.csproj -c Release -f net7.0-android /p:AndroidSigningKeyPass=${{ secrets.KEYSTORE_PASSWORD }} /p:AndroidSigningStorePass=${{ secrets.KEYSTORE_PASSWORD_STORE }} --no-restore

附加信息:

  • 密钥库文件已正确解密并可在 GitHub 机密中找到
  • 动作环境。使用的 Java 版本是 17
  • 微软发行版。工作流程中的所有前述步骤(包括依赖性恢复和 MAUI 工作负载安装)均顺利完成。有没有人遇到过类似的问题,或者可以深入了解 GitHub Actions 上的 jarsigner.exe 可能导致此错误的原因?

我是否应该共享整个 .yaml 文件?

yaml github-actions maui jarsigner
1个回答
0
投票

好的,所以我解决了。

删除 .csproj 文件中的密钥库配置并将其添加到命令中使其正常工作。

  run: dotnet build App.name/App.name.csproj -c Release -f net7.0-android /p:AndroidKeyStore=true /p:AndroidSigningKeyStore=${{secrets.KEYSTORE}} /p:AndroidSigningKeyAlias=${{ secrets.KEYSTORE_ALIAS }} /p:AndroidSigningKeyPass=${{ secrets.KEYSTORE_PASSWORD }} /p:AndroidSigningStorePass=${{ secrets.KEYSTORE_PASSWORD }}
--no-restore
© www.soinside.com 2019 - 2024. All rights reserved.