在CentOS 7.0上安装Scala时,你大概率会遇到一个经典问题:系统自带的OpenJDK只提供了运行时环境,却没有编译器ja vac。我第一次装的时候也踩了这个坑——满心以为直接就能用,结果一编译就报错。其实解决起来不复杂,把自带的OpenJDK卸掉,换成Sun官方的JDK就行。下面把完整步骤梳理一遍,顺便附上一个改主机名的小技巧。
先看看系统里自带了哪些OpenJDK包:
[root@mycentos01 bin]# rpm -qa | grep ja va ja va-1.7.0-openjdk-1.7.0.512.4.5.5.el7.x86_64
找到之后,直接卸载掉——注意这里要用--nodeps跳过依赖检查,否则会报一堆依赖关系错误:
[root@mycentos01 bin]# rpm -e --nodeps ja va-openjdk-headle.x86_64
接着,把你从Oracle官网下载的JDK(我用的jdk-8u121-linux-x64.tar.gz)解压到指定目录:
[root@mycentos01 bin]# tar -zxvf jdk-8u121-linux-x64.tar.gz
然后把Scala也解压好(版本是2.10.6):
[root@mycentos01 bin]# tar -xzvf scala-2.10.6.tgz
接下来配置环境变量。编辑/etc/profile文件,把JDK和Scala的路径加进去:
[root@mycentos01 bin]# vim /etc/profile

保存退出后,别忘了让配置生效:
[root@mycentos01 bin]# source /etc/profile
最后验证一下,输入ja va -version和scala -version,如果都能正常显示版本信息,那就妥了。
另外,顺手说个CentOS 7.0改主机名的事。以前常用的方法是往/etc/sysconfig/network里写入HOSTNAME=你想用的名字,但我试了几次重启后完全没生效(检查过语法没写错)。后来发现用hostnamectl工具最靠谱,一条命令搞定静态主机名:
[root@mycentos01 bin]# hostnamectl set-hostname "your computer name you want to set"
这个小细节值得记一下,省得后面再折腾。
