转自:http://vela.diandian.com/post/2012-01-06/15379924

最近呢,想玩玩jdk1.7,不过mac平台下的jvm一直都是Apple自己改的,所有有些麻烦。这篇文章呢,就是一个详细的步骤,教你如何在mac下安装和使用jdk1.7。当然了,和你想象的一样,我是不会写什么有技术含量的文章的,所以只是一个简单的guide。

  1. 首 先呢,为了少出问题,先要让平台装一个java,Snow Leopard下还好(默认就有),Lion的话默认是没有安装任何jvm的,安装方法也很简单,终端下输入java或者启动任何需要用到java虚拟机 的应用,就会自动触发Software Update安装jvm。

  2. 下载mac版专用的jdk1.7,地址如下:http://jdk7.java.net/macportpreview/,里面有最新版的(不过还是测试版),版本更新频率每两周大概会release一个build,我安装的版本是b223(更新一下,最新版本是b227了,已经不是OpenJDK了)。

  3. 下好之后,双击dmg打开,然后简单的来一个拖拽(这个就不废话了,不会拽的面壁去)。

  4. 改变jvm首选顺序,在Spotlight里搜索[Java Preferences](中文版应该是JAVA首选项么?),应该能看到已经有的几个虚拟机,把JAVA SE 7拖拽到最上面,就可以了(比如我拖拽的是64位版本的)。

  5. 确认java使用的版本:开一个终端,输入java -version,确认jvm的版本号是jdk1.7.0。

  6. 下面的操作是如何改变eclipse默认的jre,首先打开eclipse(如果你改了jvm的顺序,让1.7在最上面,又没在eclipse的配置里写死jvm的启动位置,那么应该就已经用jdk1.7启动了)。

  7. 打开首选项->Java->Installed JREs,看到右侧的JRE列表,如果已经使用是默认的jdk1.6的话,点Add,选择MacOS X VM,在路径的地方指向到jdk7的安装位置,就可以了。

  8. 话没说完,如果你找不到这该死的jdk1.7的安装位置在哪里,可以考虑粘下这个地址(这个是我系统里的位置,我猜测大家的都应该差不多哈)。/Library/Java/JavaVirtualMachines/JDK 1.7.0 Developer Preview.jdk/Contents/Home

  9. 正确的话,下面会识别出一堆jar包位置,然后给这一坨jre起个帅气的名字。

  10. 如 果想启用jdk1.7的语法,必须要eclipse版本在3.8/4.2以上(目前我写这篇博客的时候,4.2已经达到了Milestone4),然后可 以在workspace/project属性里把编译等级调整到1.7,就能享受jdk1.7的语言特性了(不过前提是,使用的jdk以及jre必须都是 jdk1.7以上才行)。

希望这篇啰嗦的文章对大家有帮助。

更新信息

  1. 支持Java7语法的eclipse版本是从3.7开始的,具体见如下地址:http://wiki.eclipse.org/JDT/Eclipse_Java_7_Support_%28BETA%29

  2. Mac下Eclipse默认还是会使用系统的jdk1.6启动,好像强制修改eclipse.ini的vm参数是无效的,必须修改Eclipse.app/Content/Info.plist,打开看里面有注释写着呢。不过我这里eclipse4.2M4修改后依然无效。

  3. 有时候会出现部分应用还使用旧的jdk1.6的情况出现,例如maven有时候就会坚持用旧版的,这时候只好找个地方导出下JAVA_HOME变量了。改到jdk1.7的Home目录即可。

  4. jdk1.7 macport从b11开始合并了分支代码,开始已经直接使用安装程序安装了,相应安装到的路径也改变了,是这个:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home 。update on 2012-2-12

  5. jdk1.7u6 b09开始,bundle name变更,这样就可以在安装新版本的同时保留旧版本了。当然了,路径也会变化,变成了这个样子:/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk,其中06是update版本号。简易大家可以做一个软连接,cd /Library/Java/JavaVirtualMachines;ln -s jdk1.7.0_06.jdk 1.7.0.jdk,这样就不会受到版本升级的影响了(这样eclipse里设置的JRE路径就用软连接里的路径就好了)。update on 2012-5-11

  6. 我忘记从某个版本开始了,装完后eclipse已经可以自动使用jdk7了,所以上面的第二条更新信息就作废鸟:)update on 2012-9-24

在mac下安装jdk1.7(转)的更多相关文章

  1. java JDK在windows及mac下安装配置

    windows下安装: JDK下载 地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. ...

  2. mac下安装配置java开发环境

    可以使用homebrew下载相关软件,以下具体讲一下环境的配置: mac下安装jdk vi .bash_profile 输入i,进入编辑模式 输入以下配置,其中JAVA_HOME是你的jdk安装目录 ...

  3. Mac 下安装Jenkins

    Mac 下安装Jenkins 开始 Jenkins是一个基于Java开发的一种持续集成工具,用于建工持续重复的工作,功能包括: 持续的软件版本发布/测试项目 监控外部调用执行的工作. 近期打算搭建自动 ...

  4. MAC下安装与配置MySQL

    MAC下安装与配置MySQL   MAC下安装与配置MySQL 一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL ...

  5. Mac下安装UPnP Inspector

    由于工作中需要用到UPnP Inspector这个工具,而这个工具在windows下安装非常简单,在Mac下安装却很麻烦,在此记录安装流程. 这个工具依赖于两个其他的库:Coherence(一个DLN ...

  6. Mac下安装Wireshark,双击闪退

     Mac OS X上使用Wireshark抓包(http://blog.csdn.net/phunxm/article/details/38590561) Mac下安装Wireshark /Appli ...

  7. Mac下安装zshell

    Mac 下安装zshell 什么是shell 大多数命令行用户接触最多的是Bash,因为Bash是各个版本操作系统(Linux&Mac)的默认shell. 查看当前使用的shell $ ech ...

  8. 【高可用HA】Apache (1) —— Mac下安装Apache Httpd到自定义路径(非/etc/apache2)

    Mac下安装Apache Httpd httpd版本: httpd-2.4.17 参考来源: Tomcat Clustering - A Step By Step Guide Apache HTTP ...

  9. 《OD大数据实战》mac下安装nginx+php

    一.mac安装nginx + php + php-fpm  或apache + php 1. Mac 下 Nginx.MySQL.PHP-FPM 的安装配置 2. Mac下安装LNMP(Nginx+P ...

随机推荐

  1. Brackets sequence

    题意: 给你一个括号序列(有中小括号),求出以给定序列为子序列的最小合法括号序列. 分析: 非常经典,以前做过相似一道题,用区间dp,但怎么把这个序列求出来没想出来. dp[i][j]表示区间i-j是 ...

  2. bzoj 2438 [中山市选2011]杀人游戏(SCC+概率)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2438 [题意] N个人中有一个杀手,每次询问一个人可能被杀或被告知其认识的人中谁是杀手 ...

  3. codeforce 702E Analysis of Pathes in Functional Graph RMQ+二进制

    http://codeforces.com/contest/702 题意:n个点,n条边,每个点出边只有一条,问从每个点出发经过k条边的边权和,以及边权最小值 思路: f[i][j] 第i个点出发,经 ...

  4. leetcode@ [352] Data Stream as Disjoint Intervals (Binary Search & TreeSet)

    https://leetcode.com/problems/data-stream-as-disjoint-intervals/ Given a data stream input of non-ne ...

  5. 第二百三十八天 how can I 坚持

    最近睡觉,老是梦到死亡,多么可怕啊.感觉好虚幻. spring事务管理,框架搭建. 看着没多少事,最起来感觉好多啊. 梳理下最近爬过的山,时间久了会忘,反正上周没爬,下雪了. 10月18号-香山,11 ...

  6. Apache Spark GraphX的使用简介

    类似 Spark 在 RDD 上提供了一组基本操作符(如 map, f ilter, reduce), GraphX 同样也有针对 Graph 的基本操作符,用户可以在这些操作符传入自定义函数和通过修 ...

  7. POJ 1308 Is It A Tree? (并查集)

    Is It A Tree? 题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/M Description A tree is a w ...

  8. HDU 4793 Collision (2013长沙现场赛,简单计算几何)

    Collision Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  9. thymeleaf中的th:with用法

    局部变量,th:with能定义局部变量: <div th:with="firstPer=${persons[0]}"> <p> The name of th ...

  10. Umbraco中的Member登录时的Lock out功能

    请参看文章 https://our.umbraco.org/forum/using-umbraco-and-getting-started/76389-preventing-member-lock-o ...