난 지금 javac와 java가 바라보는 jdk가 서로 달라

javac 의 버전은 1.8

[root@ip-172-31-9-0 ~]# javac -version

javac 1.8.0_151


java 의 버전은 1.7 

[root@ip-172-31-9-0 ~]# java -version

java version "1.7.0_151"

OpenJDK Runtime Environment (amzn-2.6.11.0.74.amzn1-x86_64 u151-b00)

OpenJDK 64-Bit Server VM (build 24.151-b00, mixed mode) 


그럼 javac가 어디있는지 찾아볼까?

javac 위치 확인


[root@ip-172-31-9-0 ~]# which javac

/usr/bin/javac


[root@ip-172-31-9-0 ~]# readlink -f /usr/bin/javac

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/javac


  → javac의 실제 위치는 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/

  → 따라서 java의 링크를 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/java 로 설정해야 함


* which = 특정명령어의 위치를 찾아주는 명령어

readlink -f = 심볼릭 링크의 원본을 찾아주는 명령어



java 링크 변경


현재 java 버전 확인

[root@ip-172-31-9-0 ~]# java -version
java version "1.7.0_151"
OpenJDK Runtime Environment (amzn-2.6.11.0.74.amzn1-x86_64 u151-b00)
OpenJDK 64-Bit Server VM (build 24.151-b00, mixed mode)

현재 java 링크 걸린거 확인
[root@ip-172-31-9-0 ~]# ll -a /usr/bin/java
lrwxrwxrwx 1 root root 22 Dec  7 04:46 /usr/bin/java -> /etc/alternatives/java

"/usr/bin/java" 의 링크 끊기
[root@ip-172-31-9-0 ~]# unlink /usr/bin/java

"/usr/bin/java" link 재연결
javac가 있는 위치에 있는 java가 실행되도록 한다.
[root@ip-172-31-9-0 ~]# ln -s /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/java /usr/bin/java

다시 java 버전 확인
[root@ip-172-31-9-0 ~]# java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)

* ln -s [신규 java] [link지정할 java]


아 짜증나!!!!

그냥 기존에 설치된 1.7 삭제하고 했으면 얼마나 좋나...

 yum remove java-1.7.0-openjdk.x86_64 


이거 한줄 하고 설치했으면 번거로운짓 안해도 됐는데...

하...


'Develope > Server' 카테고리의 다른 글

JBOSS 7.1.1 설치 및 실행  (0) 2017.12.08
NGINX 기동 및 확인  (0) 2017.12.08
NGINX 설치  (0) 2017.12.08
리눅스에 JDK 1.8 설치  (0) 2017.12.07
리눅스 종류, 버전 확인  (0) 2017.12.07

+ Recent posts