【问题标题】:Unable to locate an executable at "/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner"无法在“/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner”中找到可执行文件
【发布时间】:2021-08-22 10:08:47
【问题描述】:

我正在尝试在 android 上构建一个发布包,但由于某种原因,它开始给我这个错误:

命令:

flutter build appbundle --target-platform android-arm,android-arm64 --build-number=$VERSION_CODE --build-name=$VERSION_NAME

错误:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:packageReleaseBundle'.
> java.util.concurrent.ExecutionException: java.lang.RuntimeException: jarsignerfailed with exit code 2 :
  Unable to locate an executable at "/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner" (-1)

* 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.org

BUILD FAILED in 1m 0s
Running Gradle task 'bundleRelease'...
Running Gradle task 'bundleRelease'... Done                        61.8s
Gradle task bundleRelease failed with exit code 1

我已经检查过了,jarsigner 二进制文件不在那个目录中。 试图查看是否在某个地方安装了:whereas jarsigner 并且位于/usr/bin/jarsigner

我试图在 Android Studio 期望的目录中复制/符号链接文件,但是一旦我这样做并再次执行构建命令,Gradle 的 bundleRelease 任务仍保留在 Running Gradle task 'bundleRelease'... (This is taking an unexpectedly long time.) 并且不会还没完。

我可以毫无问题地构建用于发布的 APK。

Flutter Doctor 输出:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.22.6, on Mac OS X 10.15.6 19G2021 darwin-x64, locale en-AL)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 12.4)
[!] Android Studio (version 4.2)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart-specific functionality.
[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

Java 版本输出:

openjdk version "1.8.0_232"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.232-b09, mixed mode)

一年多来,我一直在构建这样的应用程序。

提前感谢您的帮助。

【问题讨论】:

  • 我也有同样的问题。你找到解决办法了吗?
  • 不,还没有。您还记得您在计算机上进行的修改后是否开始出现此问题?在我尝试设置 React Native 应用程序并遇到 Java Path 问题后,我的工作开始了。声明 JAVA_HOME 环境变量后,下次我尝试构建一个颤振应用程序时,没有工作。
  • 这不是纯粹与您的路径有关吗,很可能在您的 bash/zsh 配置文件中设置以下内容会修复它:bash # Personal scripts PATH="$PATH:$HOME/bin" PATH="$PATH:/usr/local/ant/bin" PATH="$PATH:/usr/local/tomcat/bin" export PATH 否则似乎是对该位置的错误引用。

标签: java android flutter android-studio gradle


【解决方案1】:

如果您使用的是android studio,请将Gradle使用的JDK Location从嵌入式更改为OpenJDK(您手动安装的那个)

然后进行干净的构建。或者创建一个新项目并复制粘贴旧代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    • 2020-05-07
    • 2019-08-01
    • 2018-08-07
    • 1970-01-01
    • 2015-10-03
    • 2018-05-09
    相关资源
    最近更新 更多