当前位置: 首页 > 面试题库 >

Cordova无法在Java 9中使用。如何仅为Cordova设置特定的jdk?

劳夕
2023-03-14
问题内容

由于这个问题,目前Cordova无法在Java
9上运行(如果我错了,请纠正我)。

这里讨论了一个类似的问题,但是建议的解决方案涉及删除Java
9或将JAVA_HOME环境变量重置为指向Java 8,但是两者都有副作用,即所有其他Java应用程序都将在Java 8上运行。

那么,如何将Cordova设置为使用Java 8,而其余的应用程序仍在Java 9上呢?


问题答案:

…将JAVA_HOME环境变量重置为指向Java 8,但是[副作用]是所有其他Java应用程序都将在Java 8上运行。

只有以错误的方式做!

创建一个mycordova.sh包含该文件的文件(例如),使其可执行,并将其放在您的Shell的命令搜索路径中。

#!/bin/sh
export JAVA_HOME=/path/to/java8/home
cordova "$@"

运行该命令可cordova使用Java 8 运行, 而不会 干扰其他应用程序。

更新
-如果建议的解决方法alternatives用于更改,则表示Cordova启动器/脚本未JAVA_HOME用于查找java命令。您也可以处理。有两种可能:

  • 如果cordova是包装脚本,则将其复制并编辑以使用java您要使用的命令版本(etc)。

  • 如果不是,则在mycordova.sh脚本中(请参见上文)也更新PATH变量,以使Java 8 JRE的bin目录位于包含管理java链接的目录的前面alternatives。只要标准的科尔多瓦发射器没有硬接线就可以了/usr/bin/java

更新 2-mycordova.sh的最终脚本是:

#!/bin/sh
export JAVA_HOME=/path/to/java8/home
export PATH=/path/to/java8/bin/:$PATH
cordova "$@"


 类似资料:
  • 这里讨论了一个类似的问题,但是提出的解决方案涉及删除Java9,或者重置JAVA_HOME环境变量以指向Java8,但是这两种方法都有副作用,即所有其他Java应用程序都将在Java8上运行。 那么,如何将Cordova设置为使用Java8,而其余的应用程序仍在Java9上呢?

  • 我一直试图在我的Windows7机器上设置科尔多瓦。经过几个小时的故障排除,我相信我已经将问题缩小到ant的配置上,但我不知道如何修复它。 现在令人沮丧的是,在我的环境变量中,JAVA_HOME确实指向JDK,而不是JRE。当我运行时,我得到: 当我运行时,我得到: 以下是我所有的相关环境变量(我认为): 路径:C:\程序文件(x86)\nodeJS\;C:\程序文件(x86)\git\bin;C

  • 我也有类似的问题: CordovaActivity无法解析为Phonegap 3.4中的类型。 意味着,在主类中,不能解析为类型。 然而,我从这里下载了科尔多瓦Android Zip(如评论中所述):https://github.com/apache/cordova-android. 包括来自到我的构建路径。 行: 现在工作正常,但仍然找不到任何名为的扩展类。 我通过以下方式证明: 在未包装的文件

  • 我使用Ubuntu 14.04。我正在按照http://chrislarson.me/blog/how-use-cordova-ubuntu-build-android-apps.html中给出的步骤在Ubuntu上构建我的第一个Android应用程序。 但当我运行此命令时:,我在终端上收到以下消息: 错误:EACCES,打开/home/a/. cordova/lib/npm_cache/cord

  • 更新我的问题: 我在安装用于Windows Phone 8的cordova时遵循了此步骤(不使用终端)。我无法确定插件文件在模板中的位置:https://cordova.apache.org/docs/en/3.0.0/guide_platforms_wp8_index.md.html 唯一的解决方案(不是我想要的)是我必须使用phoneGap而不是cordova。我试图调用API来显示设备版本,

  • 问题内容: 我一直在努力建立我的cordova插件项目。主要由于以下事实: 插件需要位于远离主项目的单独文件夹中 例如,当我使用它来构建项目时,cordova从我的插件文件夹中复制java文件并将其放入文件夹中。 因此,我不应该在Android项目中手动修改插件的.java文件,而必须在插件文件夹中编写代码。 但是我无法将插件文件夹导入到IDE项目中,因此我没有代码完成功能。 没有IDE支持,基本