删除旧版本的java或者说是自带的,免得干扰
查找java
[wangl@centos7 java]$ rpm -qa|grep javajava-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
tzdata-java-2020a-1.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
删除java
rpm -e --nodeps 查询到的jdk
下载java17
安装
创建存放目录
[wangl@centos7 java]$ mkdir -p /usr/local/soft/java
[wangl@centos7 java]$ cd /usr/local/soft/java
把文件上传到 /usr/local/soft/java/目录下进行解压
[wangl@centos7 java]$ tar -zxvf jdk-17_linux-x64_bin.tar.gz
配置环境变量
vim /etc/profile
找到export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL,在下面写上:
#java
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/git/binexport JAVA_HOME=/usr/local/soft/java/jdk-17
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
java17是没有jre/bin目录的,但是为了方便切换到8版本,还是保留吧。想切换到java只需要修改环境变量JAVA_HOME为你java8的安装目录即可。
保存并退出
:wq
使环境变量生效
source /etc/profile
java -version
输出
java version "17.0.4" 2022-07-19 LTS
Java(TM) SE Runtime Environment (build 17.0.4+11-LTS-179)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.4+11-LTS-179, mixed mode, sharing)
下面安装 idea 2022.2
linux idea 启动报错 Can’t connect to X11
linux tomcat 启动报错 Can’t connect to X11
com.intellij.ide.plugins.StartupAbortedException: Cannot start appat com.intellij.idea.StartupUtil.lambda$start$15(StartupUtil.java:265)
......
Caused by: java.awt.AWTError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.
java在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。
提示信息:"Can’t connect to X11 window server"这是由于Linux的图形处理需要一个X Server服务器。
解决办法:
-
- 如果服务器上安装有图形界面,可以通过设置环境变量:DISPALY=127.0.0.1:0.0解决。
-
- 如果没有安装图形界面,可以在Java运行时加上参数:-Djava.awt.headless=true。
在tomcat[catalina.sh]文件最前面加上JAVA_OPTS=“-Djava.awt.headless=true”
idea 同理:在 idea64.vmoptions
vim idea64.vmoptions
加上
-Djava.awt.headless=true