OS X 中 Android Studio 使用 JDK 8 作为 IDE JDK 问题与经验

2015-06-02 21:42:41 +08:00
 banxi1988
目前的问题是,通过 LaunchPad, Alfred 等启动.都默认使用的是 Java 6
按此处 [Mac OSX JDK Selection](http://tools.android.com/tech-docs/configuration/osx-jdk) 的说明

```
➜ ~ echo $STUDIO_JDK
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/
```
还是启不了作用. 在 `/etc/profile` 也是如此.

只有在终端打开 Android Studio 如: `➜ ~ open /Applications/Android\ Studio.app`
才会读取设置的 `STUDIO_JDK` 环境变量.
不过Android Studio 也是属于那种,打开就能干一天活的IDE. 所以也不太麻烦.

问: 如何知道 Android Studio 运行所使用的 Java 版本?
答: 1. 打开"活动监视器" 2. 搜索 Android Studio 3. 选中 Android Studio 进程 4. 点击工具栏中感叹号图标. 4. 在新打开的对话框中,点击 "打开的文件与端口" 选项卡.
如果是Java 6 就相应打开是 Java 6 的库文件. Java 8 的则是Java 8的
如:

> /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/lib/libverify.dylib


PS: 将 Android Studio 换成使用 Java 8的感受
1. 外观上. 字体应该说更细腻了 (之前的 Java 8 版本 有 subpixel渲染问题,现在OK了)
2. 速度更快了 (我是觉得速度 有点慢,才想着折腾 Java 8的), 当然速度快,也跟我调整过 jvm 参数有关.
3. 使用最新版本 JDK 心里有点点小高兴
9805 次点击
所在节点    Android
19 条回复
cielpy
2015-06-02 21:57:47 +08:00
我直接下载安装了JDK,安装Android Studio启动,一切正常。
JDK是在官网下的。http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
然后在Android Studio的关于能看到使用的JDK版本。
mgcnrx11
2015-06-02 22:14:04 +08:00
显示包内容,Content-->Info.plist
mgcnrx11
2015-06-02 22:14:51 +08:00
显示包内容,Content-->Info.plist

修改<key>JVMVersion</key>
<string>1.8</string>
这个Intellji IDEA的设置,不过应该一样

错手连击了
allan1st
2015-06-02 22:27:32 +08:00
@mgcnrx11 不行的,AS 的网页上说 Please note: Do not edit Info.plist to pick a different version. That will break not only the application signature, but also future patch updates to your installation.
allan1st
2015-06-02 22:31:33 +08:00
OS X Yosemite 下面可以用 launchctl setenv 来设置全局变量。但是要每次开机运行,我搜索了一下有个解决方案。
打开系统的 Script Editor
输入
do shell script "launchctl setenv STUDIO_JDK \"/Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk\"" (当然要换成你自己的路径)
然后 cmd s,选择类型为 Application。放到你自己想放的地方。
打开系统设置,用户与群组选择你自己的名字,选择登录项,把刚刚生成的 Application 加入。
注销重新登录,搞定。
banxi1988
2015-06-02 23:06:03 +08:00
@mgcnrx11
正如 @allan1st 所引用的这样, 修改 Info.plist 是不好的做法, Java 8 刚出来时,我这样改过 IDEA (但是当时的字体渲染确实有问题)


@cielpy 估计你误解我的意思了. 在 Android Studio 中看到的版本是 Project JDK. 我讨论的是 IDE JDK.
详情参考我帖子中提到的链接.
sobigfish
2015-06-02 23:11:39 +08:00
我的也是正常的 AS1.3 preview 1
jdk
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/lib/jli/libjli.dylib
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/lib/libverify.dylib

先安的jre 发现没用 安的jdk
allan1st
2015-06-02 23:26:05 +08:00
@banxi1988 现在字体渲染正常了么?我用 jdk 1.8.0 45 好像没有次像素渲染,感觉很差。
vjnjc
2015-06-02 23:36:43 +08:00
多谢分享,最近在玩angularJS,mark一下
Lesilva
2015-06-02 23:38:43 +08:00
我用jdk 1.8.0 45 字体渲染看起来很细很不舒服
zhouquanbest
2015-06-03 00:21:27 +08:00
换AS的JDK没任何意义啊 那个相当于IDEA的JRE版本 而且非Mac的JDK1.6 Swing渲染很丑的

如果是project要用1.8 改gradle就可以
Lonely
2015-06-03 00:38:46 +08:00
换了有啥意义?
banxi1988
2015-06-03 07:57:24 +08:00
@allan1st 我使用下来 subpixel 的渲染是有的.
只是默认情况下如 @Lesilva 所说,比较精细 但是调整一下字体大小就可以了.
Appearance 中的字体可以保持不变够了.
Editor 中的字体调整为 13 使用默认字体 Menlo


@zhouquanbest
我用 Android Studio, 设置主题为 Darcula 外观感觉一切 OK 啊.
@Lonely
Apple 已经不维护 Java 更新了. Java 8 也比较成熟了. 换了试试. 拥抱变化.
zhouquanbest
2015-06-03 11:17:24 +08:00
@banxi1988
呃 字体太细了 还是不太能接受。。。。。
zhouquanbest
2015-06-03 11:44:23 +08:00
@banxi1988
优化还是没做好
我最早用1.7 1.8时都挺丑 现在是retina屏下渲染不错 但换个1080p的屏 瞬间看到狗牙
allan1st
2015-06-03 19:04:27 +08:00
@banxi1988 JetBrain 系的有没有办法调字重啊,这个渲染配上默认的 weight 完全无法接受啊。非 Retina 屏,25 寸 2K 屏。
WhiteBase
2015-10-02 13:24:58 +08:00
IntelliJ idea 15 EAP 版本的 JDK 的确是能够解决渲染问题,而且能够单独提取出来用,设置好 IDEA_JDK 变量就能正常使用,如同 @allan1st 提到的那样。
allan1st
2015-10-02 18:04:26 +08:00
@WhiteBase 替换下来很完美,不需要再装苹果那个 1.6 的 JDK 了。谢谢。
allan1st
2015-10-02 18:30:04 +08:00
@WhiteBase 又用了下发现一个问题,自动完成没有次像素渲染,必须移动光标 focus 以后才渲染正确。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/195626

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX