Linux(Deepin)下配置java8

一、卸载OpenJDK

由于Deepin自带了OpenJDK,在使用Eclipse会报错,貌似是找不到主类什么的,所以我们先卸载OpenJDK以安装jdk8。

我用的国产Deepin Linux操作系统,在手动安装JDK后,一旦运行java相关命令就出现这样的一句话提示:

Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=gasp

例如
1.java -version

2.Picked up _JAVA_OPTIONS:   -Dawt.useSystemAAFontSettings=gasp
3.java version "1.8.0_05"
4.Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
5.Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

在eclispse,myeclipse,Android Studio中运行程序,也有同样的问题,让人恼火不行。这个问题困扰了我很久。

就在今天,终于找到了解决办法: 
如果是不同的操作系统,参照解决。(基本上是一样的)

主要原因是:

系统原有的OpenJDK设置干扰了手动安装的JDK。干扰的文件是:/etc/profile.d/java-awt-font-gasp.sh

解决的办法(一):

一、将OpenJDK的相关设置Copy到你的Jdk下的Jre中 
sudo cp -p /etc/java-7-openjdk/properties /opt/Java/jdk1.8.0_66/jre/lib/

如果只是为了解决上面的问题,也可以不Copy,但为了保险起见……

二、将文件备份

sudo cp -p /etc/profile.d/java-awt-font-gasp.sh ~/.local/share/init.d-bak

三、删除文件

sudo rm /etc/profile.d/java-awt-font-gasp.sh

四、注销退出或是重启,解决问题

终极解决方法:

前一段时间重新做了系统,还是遇到了同样的问题,但是根据以前的方法没有解决问题。经过尝试总结了新的解决办:

【1】找到/etc/profile文件,在JDK环境变量之前添加如下:

unset _JAVA_OPTIONS
  • 1

【2】注销用户,问题解决。

二、安装jdk8


  • 下载JDK的tar.gz包

官网下载最新的JDK:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • 解压压缩包

进入下载目录

cd ~/Download

解压tar.gz包

tar -zxvf jdk-8u171-linux-x64.tar.gz

安装JDK

sudo mv jdk-8u171-linux-x64/  /usr/lib/jvm/jdk1.8.0_171

 

JDK环境变量配置

  • 修改配置文件
sudo vim /etc/profile

在文件的末尾增加内容

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

注意jdk的路径和版本

  • 使配置生效
source /etc/profile

测试

  • 查看JAVA版本

terminal上执行下面命令

java -version

输出

java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

terminal上执行java与javac命令都有正确反馈,安装成功,到此结束。

参考:https://www.cnblogs.com/keitsi/p/5817433.html,https://blog.csdn.net/qq_23191031/article/details/51049684,如有侵权请告知。

猜你喜欢

转载自blog.csdn.net/L141210113/article/details/80723398