Ionic + Cordova Android构建错误-找不到tools.jar

p4tfgftt  于 12个月前  发布在  Ionic
关注(0)|答案(7)|浏览(159)

今天我已经升级我的MacBook到macOS Big Sur版本11.0.1.现在有一个问题出来,当我试图构建Android的项目.

Execution failed for task ':CordovaLib:compileDebugJavaWithJavac'.
> Could not find tools.jar. Please check that /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home contains a valid JDK installation.

字符串

83qze16e

83qze16e1#

尝试运行

/usr/libexec/java_home -V

字符串
看看这是否显示在列表中

/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home


这是我的情况,我不得不删除条目到互联网插件文件夹。检查here的更多细节,帮助我。

ma8fv8wu

ma8fv8wu2#

我今天也面临着同样的问题,而同样的设置(构建Android应用程序)在升级到大苏尔之前对我有效。
我看到了各种各样的解决方案,比如-

  1. Flutter could not find tools.jar
  2. Not able to run Eclipse on macOS Big Sur
    但我不确定这些是否是推荐的解决方案。我试了几个小时,终于得到了正确的修复工作(看起来对我来说)。
    基本上,对我来说,JAVA_HOME变量没有设置(或者Big Sur以某种方式删除了它)。
    所以我简单地将它添加到我的~/.zshrc(或~/.bashrc)中-
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home

字符串
您可以简单地检查并替换上面一行中的版本号。

o7jaxewo

o7jaxewo3#

如果这个问题在Cordova的android版本中还没有解决--就手动解决吧。我的例子是:java_home设置正确,并且重新加载了~/.zshrc(或~/.bashrc)文件。我通过在终端上回显来获取JAVA_HOME值。
所以我手动将文件tool.jar/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/lib复制到/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib,它工作了。
为了方便使用此命令
sudo cp /Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/lib/tools.jar /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib
检查你的Java JDK版本。

vwoqyblh

vwoqyblh4#

发生此问题是因为环境变量JAVA_HOME未正确设置。
第1步-通过在终端中打印JAVA_HOME的值来确认你有问题。你很可能会得到一个空字符串。

echo $JAVA_HOME

字符串
步骤2 -在您的计算机上找到正确的路径

/usr/libexec/java_home -V


复制与“Java SE 8”相关联的路径,该路径通常看起来像/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
步骤3 -使用nano编辑.zshenv

nano ~/.zshenv


步骤4 -将步骤2中的路径添加到文件中,如下所示

export JAVA_HOME=YOUR_JAVA_PATH


举例说明:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home


步骤5 -获取更新的.zshenv文件以激活环境变量

source ~/.zshenv


步骤6 -打印以确认路径

echo $JAVA_HOME

8oomwypt

8oomwypt5#

在将Mac OS更新到Big Sur之后,我面临着同样的问题,解决方案:

qlvxas9a

qlvxas9a6#

在我的情况下,出现问题是因为JAVA_HOME路径更新了/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home,其中有许多问题
在终端上运行/usr/libexec/java_home -V时发现:

1.8.151.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
1.8.0_151 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home

字符串
所以我把它改成了旧的工作用的

x3naxklr

x3naxklr7#

我也解决了同样的问题,通过下载最新版本的jdk 8并安装它。我还设置了我的.bash_profile(可以是你的首选项),添加JAVA路径如下:

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-latest-version/Contents/Home"

字符串

相关问题