Mac配置Jdk 安装及系统环境配置[通俗易懂]

Mac配置Jdk 安装及系统环境配置

大家好,又见面了,我是你们的朋友全栈君。

注:本文来于《  Mac配置Java开发环境    》

1. 下载JDK

从下面链接选择合适版本的安装包进行下载…笔者下载的是jdk-9.0.1

链接:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2. 安装JDK

双击jdk-9.0.1_osx-x64_bin.dmg文件进行安装

3. 查看是否安装成功

打开terminal,输入:java -version

JiaxindeMacBook-Pro:Code jiaxin$ java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

4. 配置PATH和CALSSPATH路径

打开terminal,打开profile文件(需要输入密码)

JiaxindeMacBook-Pro:Code jiaxin$ sudo vim /etc/profile
Password:

在文件末尾添加JAVA_HOME路径(切换英文输入法,键入“i”,进入插入模式)

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/"

CLASS_PATH="$JAVA_HOME/lib"

PATH=".:$PATH:$JAVA_HOME/bin

其中,第一行

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/"

里面

jdk-9.0.1.jdk

是一个文件夹,根据你安装的JDK版本,具体查看方式:打开Finder,快捷键 “Command + Shift + G”,输入

/Library/Java/JavaVirtualMachines/

单击回车,就可以看到

Mac配置Jdk 安装及系统环境配置[通俗易懂]

加上后显示如下(确认添加完毕,按esc退出插入模式,英文输入发下键入“:wq!”保存并退出profile文件)

复制代码
# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
        eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
        [ -r /etc/bashrc ] && . /etc/bashrc
fi

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/"

CLASS_PATH="$JAVA_HOME/lib"

PATH=".:$PATH:$JAVA_HOME/bin"
复制代码

5. 查看JAVA_HOME是否配置成功

重启terminal,或者输入以下命令使生效

JiaxindeMacBook-Pro:~ jiaxin$ source /etc/profile

6. 查看更改后的JAVA_HOME路径

输入echo $JAVA_HOME

JiaxindeMacBook-Pro:~ jiaxin$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/

到这里在Mac配置Java开发环境就算完成!

7. 测试Java程序的编译运行

配置完了自然是要测试一下是否能够编译运行著名的Hello.java

代码如下:

1 class Hello {
2 
3     public static void main(String[] args) {
4         System.out.println("Helllo");
5     }
6 }

在terminal上输入:javac Hello.java,单击回车,进入文件目录查看是否生成class文件

sJiaxindeMacBook-Pro:~/Documents/Develop/Java/Code jiaxin$javac Hello.java

运行正常

JiaxindeMacBook-Pro:~/Documents/Develop/Java/Code jiaxin$java Hello
Helllo

至此,真正完成了在Mac配置Java开发环境!

补充

– CLASS_PATH、PATH环境变量的作用

(1)CLASS_PATH 保证class文件能够在任意目录下运行

(2)PATH 保证javac可以在任意目录下运行

– 下面介绍如何设置terminal显示全路径

(1)查看terminal当前设置,键入:echo $PS1

JiaxindeMacBook-Pro:~ jiaxin$ echo $PS1
\h:\W \u\$

(2)更改配置

  - 进入用户目录

JiaxindeMacBook-Pro:~ jiaxin$ cd ~

  - 用文本编辑器编辑bash_profile文件

JiaxindeMacBook-Pro:~ jiaxin$ open -e .bash_profile

   – 如果显示没有如下,则是没有该文件,需要创建

JiaxindeMacBook-Pro:~ jiaxin$ open -e .bash_profile
The file /Users/jiaxin/.bash_profile does not exist.

   – 查看bash当下文件

JiaxindeMacBook-Pro:~ jiaxin$ ls .bash*
.bash_history

   – 新建bash_profile文件并查看是否新建成功

JiaxindeMacBook-Pro:~ jiaxin$ touch .bash_profile
JiaxindeMacBook-Pro:~ jiaxin$ ls .bash*
.bash_history    .bash_profile

  - 编辑bash_profile文件

JiaxindeMacBook-Pro:~ jiaxin$ vim .bash_profile

   –输入以下内容显示全路径,保存并退出(编辑及保存退出操作见上文“4. 配置PATH和CALSSPATH路径”)

export PS1="\h:\w \u$"

   –如果只要显示用户路径则输入,保存并退出

export PS1="\u \w$"  

  - 保存文件,重启terminal或者输入以下命令,使生效

JiaxindeMacBook-Pro:~ jiaxin$source .bash_profile

(3)检查是否生效成功,和(1)的情况进行比较

JiaxindeMacBook-Pro:~ jiaxin$echo $PS1
\h:\w \u$

(4)附录,PS1内容详情

复制代码
\a    ASCII 响铃字符(也可以键入 \007) 
\d    "Wed Sep 06" 格式的日期 
\e    ASCII 转义字符(也可以键入 \033) 
\h    主机名的第一部分(如 "mybox") 
\H    主机的全称(如 "mybox.mydomain.com") 
\j    在此 shell 中通过按 ^Z 挂起的进程数 
\l    此 shell 的终端设备名(如 "ttyp4") 
\n    换行符 
\r    回车符 
\s    shell 的名称(如 "bash") 
\t    24 小时制时间(如 "23:01:01") 
\T    12 小时制时间(如 "11:01:01") 
\@    带有 am/pm 的 12 小时制时间 
\u    用户名 
\v    bash 的版本(如 2.04) 
\V    Bash 版本(包括补丁级别) ?/td> 
\w    当前工作目录(如 "/home/drobbins") 
\W    当前工作目录的“基名 (basename)”(如 "drobbins") 
\!    当前命令在历史缓冲区中的位置 
\#    命令编号(只要您键入内容,它就会在每次提示时累加) 
\$    如果您不是超级用户 (root),则插入一个 "$";如果您是超级用户,则显示一个 "#" 
\xxx    插入一个用三位数 xxx(用零代替未使用的数字,如 "\007")表示的 ASCII 字符 
\\    反斜杠 
\[    这个序列应该出现在不移动光标的字符序列(如颜色转义序列)之前。它使 bash 能够正确计算自动换行。 
\]    这个序列应该出现在非打印字符序列之后
复制代码


参考链接:

1、http://blog.csdn.net/wwj_748/article/details/44628111

2、http://www.cnblogs.com/scarlettxu/p/5367525.html

3、http://ibadboy.iteye.com/blog/1739368

转载于:https://www.cnblogs.com/ios9/p/9291334.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107428.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • RabbitMQ入门篇[通俗易懂]

    文章目录前言MQ的基本概念MQ的优势MQ的劣势常见的MQ产品RabbitMQRabbitMQ简介RabbitMQ中的相关概念:RabbitMQ工作模式Workqueues工作队列模式Pub/Sub订阅模式Routing路由模式Topics通配符模式工作模式总结消息确认生产者前言记录RabbitMQMQ的基本概念MQ全称MessageQueue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信MQ的优势应用解耦提高系统容错性和可维

    2022年4月8日
    55
  • 利用javascript判断浏览器是否已经安装ActiveX控件和是否禁止运行ActiveX控件

    利用javascript判断浏览器是否已经安装ActiveX控件和是否禁止运行ActiveX控件利用javascript判断浏览器是否已经安装ActiveX控件和是否禁止运行ActiveX控件(转)从微软给IE打上SP2以后,当IE在打开一些含有ActiveX控件的网页是,不再像以前那样,弹出提示框,让用户选择是否安装控件;现在默认情况下给隐藏起来,普通用户根本不知道是怎么回事。公司产品同样也遇到这样的问题,唯一的办法就是将控件做成一个exe文件,供用户下载手动安装注册;这样就需要

    2022年5月15日
    35
  • JavaScript数组方法总结

    JavaScript数组方法总结一.JavaScript中创建数组的方式1.使用Array构造函数varcolor=newArray();   注意:括号里面参数可以有参数,若为一个数字,表示该数组的长度,如果为多个数字或者一个(多个)非数字表示的是传递数组中应该包含的值。2.使用数组字面量varcolor=[];二.数组的长度三.数组的方法有数组原型方法,也有从object对象继承来的…

    2022年7月12日
    13
  • SpringIoc 实现原理

    SpringIoc 实现原理什么是SpringIOCspringioc指的是控制反转,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。交由Spring容器统一进行管理,从而实现松耦合“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,…

    2022年6月18日
    21
  • sql镶嵌查询_SQL数据查询之——嵌套查询「建议收藏」

    sql镶嵌查询_SQL数据查询之——嵌套查询「建议收藏」一、概念描述在SQL语言中,一个SELECT-FROM-WHERE语句称为一个查询块。将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询。例如:SELECTSname/*外层查询或父查询*/FROMStudentWHERESnoIN(SELECTSno/*内层查询或子查询*/FROMSCWHERECno=’2′);SQL语言允…

    2022年8月10日
    4
  • flashfxp3.41中文版注册码:(适合最新版本)

    flashfxp3.41中文版注册码:(适合最新版本)推荐(尚未被封的Realkey)FLASHFXPvACq2ssbvAAAAAC1W7cJKQTzmx77zmqJICvA7d3WnUtWNXdrp8YuERRFdIvXfOPbcpABkVix2aRTgg6afcIKFPxS72XYljdE9tgQD/2r+kmfVBngGM4Qc9p7e0PcTfFF/1tt2bqlxS8r0L7z0jrqb5NSiPr…

    2022年7月26日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号