Mac下改动Android Studio 所用的JDK版本号
@author ASCE1885
近期项目从Eclipse+Ant构建模式转移到了Android Studio+Gradle构建模式。自然的JDK版本号号也从JDK6升级到了JDK7,但后来发现,由于我们是一个SDK项目,终于会以JAR包形式提供给第三方使用,这样就会遇到一个问题,假设我们使用JDK7编译JAR包,而第三方编译环境使用的还是旧的JDK6,那么编译project的时候就会出现:
Unsupported major.minor version 51.0
因此须要把我们的Android Studioproject编译环境从JDK7降为JDK6。以下就是改动记录。
Mac系统JDK不同版本号的路径
默认情况下,Mac系统JDK不同版本号的默认安装文件夹有点区别,JDK6,JDK7和JDK8的 安装文件夹分别例如以下所看到的:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.7.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
Android Studio的改动
点击Android Studio的File-Other Settings-Default Project Structure:
打开Project Structure对话框,在这个对话框中能够改动Android SDK和JDK的路径:
环境变量的改动
经过上面的改动,我们在Android Studio UI界面上编译时,将使用我们改动后的JDK6版本号,可是当我们在Terminal中输入java -version查看当前JDK版本号信息时。会发现还是之前的JDK7版本号。可能的原因是之前系统中设置了JAVA_HOME环境变量。因此这里也要改动一下。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYXNjZTE4ODU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" title="">
打开Terminal。输入vim ~/.bash_profile。打开这个文件,内容例如以下:
能够看到。环境变量里面确实还是之前的JDK7版本号。将其指向JDK6的安装路径就能够了。
然后又一次载入profile使其生效:
source ~/.bash_profile
Jenkins的改动
自己主动化编译使用的是Tomcat+Jenkins,Jenkins的改动比較简单,在Jenkins首页点击[系统管理]-[系统设置]。找到例如以下JDK设置选项进行改动就可以:
改动完毕之后,重新启动Tomcat,会发现Jenkins页面訪问失败,原因在于我们使用的Jenkins版本号最低仅仅支持JRE7,官网截图例如以下:
而在环境变量那一步我们已经将JDK版本号从JDK7降为JDK6了,这时能够通过改动Tomcat的JRE_HOME參数来解决,打开Tomcat安装文件夹下bin/catalina.sh(由于我使用的是Mac系统,Windows系统请切换到catalina.bat)。搜索JRE_HOME參数,假设不存在就新建之,并赋值为电脑上JDK7文件夹:
JRE_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home