Linux通过shell脚本实现JDK版本之间的快速切换
16lz
2021-12-04
【导语】在android官网中,关于JDK的安装部分有以下要求: Android 开放源代码项目 (AOSP) 中 Android 的 master 分支需要使用 Java 8 ,在 Ubuntu 中则需要使用 OpenJDK。
对于较低的版本,参阅下表JDK 要求。
Android版本 | Jdk版本 |
---|---|
The master branch of Android in AOSP (开源代码库中的最新Android主分支) | OpenJDK 8 |
Android 5.x (Lollipop) - Android 6.0 (Marshmallow) | OpenJDK 7 |
Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat) | Java JDK 6 |
Android 1.5 (Cupcake) - Android 2.2.x (Froyo) | Java JDK 5 |
一.JDK的安装
这个不说了,网上有很多教程,我以前也总结过一篇关于jdk的安装:《ubuntu下配置安装jdk1.6实用简单方法详解》。
不过,追本溯源,官方的才是最正宗的,点击上面提到的JDK版本链接,就可以跳转到官方提供的JDK安装步骤。
二.实现shell脚本切换JDK的步骤
对于要编译多个android版本的操作系统,会发现经常需要对jdk进行切换,而一般的切换,需要输入好几个命令行,而且还很难记住,为解决一问题,这里提供利用shell脚本实现切换jdk的目的;
这里以我虚拟机安装的Ubuntu16.04桌面版系统为例;
1.确定多个JDK版本的安装路径
我电脑里安装了jdk1.8 和 jdk1.6 两个版本,安装路径都在/usr/lib/jvm
目录下:
/usr/lib/jvm/java-8-openjdk-amd64/
/usr/lib/jvm/jdk1.6.0_45/
2.根据上面的jdk路径,新建脚本文件 change_jdk, 脚本的内容:
if [ x$1 == x ]; then echo default jdk1.6 exit 0fiif [ x$1 == x1.6 ]; then echo change jdk to 1.6 export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH java -versionfiif [ x$1 == x1.8 ]; then echo change jdk to 1.8 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH java -versionfi
这个脚本也托管在csdn code服务器,链接地址:https://code.csdn.net/limin13215/change_jdk/tree/master
3.设置通过脚本名称可以在任意目录执行脚本
我的脚本文件放在~/work/tools
目录下,在系统环境管理文件 ~/.bashrc 或者~/etc/profile 添加一行代码:
export PATH=~/work/tools:$PATH
4.打开终端,在任意目录执行以下命令都可以切换jdk版本
- 若切换到jdk 1.8 ,执行命令:
source change_jdk 1.8
- 若切换到jdk 1.6 ,执行命令:
source change_jdk 1.6
版权声明:本文为【limin13215】原创文章,欢迎转载,转载请注明链接:http://blog.csdn.net/limin2928/article/details/71159259
更多相关文章
- Linux通过shell脚本实现JDK版本之间的快速切换
- Android自动化测试之环境搭建(二)
- [Android] 基于 Linux 命令行构建 Android(安卓)应用(七):自动化构
- Android和Linux kernel发展史
- Python+Android开发
- use '@foo' to launch a virtual device named 'foo'
- Android开发之一些问题的解决办法
- Android(安卓)Studio 下载安装教程
- android SDK 2.3安装