繁体   English   中英

java jre jdk设置使用android捆绑jre

[英]java jre jdk setup using android bundled jre

有很多类似的问题,但我的问题不同,所以请在确定新问题之前阅读整个问题。

随Android Studio 4.0.1 版自动安装捆绑的JAVA jdk。 我在 CMD 上输入 java -version 的所有内容,然后我收到以下消息

C:\Users\OceanicBlue>java -version
'java' is not recognized as an internal or external command,

这是因为 JAVA_HOME 未设置,所以我尝试在 Windows 10 机器中的环境变量->系统变量中进行操作,但没有成功。 问题一直存在。

JAVA_HOME ->  C:\Program Files\Android\Android Studio\jre\
JAVA_HOME ->  C:\Program Files\Android\Android Studio\jre\bin
JAVA_HOME ->  C:\Program Files\Android\Android Studio\jre\jre\bin
JAVA_HOME ->  %JAVA_HOME%\bin

我可以为 JAVA_HOME 使用 Android 的捆绑 JDK 吗? 如果没有,那么我应该下载哪个版本。 Oracle 强制您注册以使用他们的 JDK11。 我拒绝向他们提供我的个人信息以使用免费的东西。 此外,我不希望在我的机器上安装不必要的额外版本的 JAVA。 最终它们会引起问题。

我到底想做什么? 我正在尝试使用命令行编译 Java 程序。 Android 为我安装了 JDK,为什么不使用它呢? 不,我无法使用 Android Studio 中的终端屏幕编译 Java 项目。

这是因为 JAVA_HOME 没有设置

这不是正在发生的事情。 JAVA_HOME 不是巫毒魔法,windows shell 没有某种内置知识。 通过扫描 PATH 环境变量中java.exejava.comjava.bat每个条目来执行输入的命令。 没有可用的。 如果您真的希望在命令行中键入“java”时使用C:\\Program Files\\Android\\Android Studio\\jre\\bin的 java.exe(这不会神奇地使javac工作,这是为什么我怀疑这实际上是想要的),然后将该目录添加到 PATH 变量中。 JAVA_HOME 大多没用; 一些过时的工具有时会查看它,如果它不存在就会失败; 更现代的工具可能仍然会查看它,但也会扫描其他地方,例如路径或 Windows 注册表。

此外,这显然不是捆绑的 JDK,而是捆绑的 JRE,不能用于编译。 它确实有 java.exe,但你不能用它来编译东西。 作为 JRE,它也已过时/过时(JRE 不再是 Java 分发方式的一部分;java8 是带有 JRE 的最后一个版本)。

注意javac一般在处理android时比较没用; android 不运行类文件。

我正在使用 Android Studio 4.1.1

我到底想做什么? 我正在尝试使用命令行编译 Java 程序。 Android 为我安装了 JDK,为什么不使用它呢?

首先,它只是捆绑的 JRE。 它不是JDK。

但是,我能够通过在环境变量中添加两个新条目来编译和运行我的test.java

C:\Program Files\Android\Android Studio\jre\jre\bin
C:\Program Files\Android\Android Studio\jre\bin

注意:我以前从未安装过 JDK。 我只是使用了存在于 Android Studio 文件夹中的jre/bin/的 JRE 二进制文件

请参阅随附的图像。

CmdPromptProof.png

我认为您应该重新检查您的环境变量,否则尝试获取 Android Studio 最新版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM