无法在“/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner”中找到可执行文件

Posted

技术标签:

【中文标题】无法在“/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner”中找到可执行文件【英文标题】:Unable to locate an executable at "/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 否则似乎是对该位置的错误引用。 【参考方案1】:

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

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

【讨论】:

以上是关于无法在“/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/jarsigner”中找到可执行文件的主要内容,如果未能解决你的问题,请参考以下文章

Mac完整卸载Android Studio的方法

Android Studio for Mac 在启动时崩溃

mac下卸载android studio

ubuntu 软件启动图标添加到launcher

ubuntu 软件启动图标添加到launcher

ubuntu 软件启动图标添加到launcher