java - 是否可以在 Android 设备上安装 JDK?

标签 java android

我希望能够在 android 终端 termux 中编译和运行基本的 java 应用程序。我检查了 Terminal IDE,但它与 Android 5.0+ 不兼容。此外,我尝试从 Oracle 的网站安装 arm64 jdk,android 无法识别它。我正在运行 CM 13,澄清一下,我希望能够直接从我的手机运行 javac 和 java 等命令。

最佳答案

如果你有Termux , 你可以下载 deb 文件 here ,并使用 apt-get install/path/to/deb 安装它。下载并安装 arm 的 JRE 和 JDK 的命令:

cd ~ # Change to home directory
apt-get install -y wget # BusyBox wget doesn't support HTTPS
hash -d wget # Forgets the BusyBox wget path so new one is used
wget https://archive.org/download/openjdk-9-jre-headless_9.2017.8.20-1_x86_64/openjdk-9-jre-headless_9.2017.8.20-1_arm.deb # Download JRE
wget https://archive.org/download/openjdk-9-jre-headless_9.2017.8.20-1_x86_64/openjdk-9-jdk-headless_9.2017.8.20-1_arm.deb # Download JDK
apt-get install -y ./openjdk-9-jre-headless_9.2017.8.20-1_arm.deb ./openjdk-9-jdk-headless_9.2017.8.20-1_arm.deb # Install the files
rm openjdk-9-*.deb # Remove the files after because they're huge

或者复制粘贴一行代码:

cd ~ && apt-get install -y wget && hash -d wget && wget https://archive.org/download/openjdk-9-jre-headless_9.2017.8.20-1_x86_64/openjdk-9-jre-headless_9.2017.8.20-1_arm.deb && wget https://archive.org/download/openjdk-9-jre-headless_9.2017.8.20-1_x86_64/openjdk-9-jdk-headless_9.2017.8.20-1_arm.deb && apt-get install -y ./openjdk-9-jre-headless_9.2017.8.20-1_arm.deb ./openjdk-9-jdk-headless_9.2017.8.20-1_arm.deb && rm openjdk-9-*.deb

要为其他架构安装,请将出现的“arm”替换为正确的架构。有“arm”(大多数 32 位手机)、“aarch64”(ARM64/armv8,大多数 64 位手机)、“i686”(x86) 和“x86_64”的文件。大多数手机都有 arm 或 aarch64。我相信 arm 版本至少应该可以在 aarch64 上运行(可能是错误的?),所以 arm 应该适用于几乎所有人。但是,如果您知道您的设备有什么,请改用它。

编辑:要查找您设备的架构,请从 Termux 运行 uname -m

关于java - 是否可以在 Android 设备上安装 JDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36539308/

相关文章:

java - 使用 JOptionPane 时如何跳出 for 循环?

读取SGML文件的Java代码

java - 无法从 jsqlparser 库导入包

java.lang.NoSuchMethodError : org. apache.zookeeper.ZooKeeper.<init>(Ljava/lang/String;ILorg/apache/zookeeper/Watcher;Z)V

Android 分享 Intent 选择器

Android 用光标删除行

java - 调用 Web 服务时不支持的类版本

java - android.view.InflateException : Not able to inflate the fragment

android - 如何更改 Activity 的标题?

android - 如果没有 Sim 存在,设备显示信号强度