DB/Tool

Ubuntu 24.04 SQuirreL SQL (4.8.0) 설치 오류

강서버 2025. 3. 9. 22:51
728x90
반응형

Ubuntu 24.04에서 SQuirreL SQL 설치(squirrel-sql-4.8.0-standard.jar) 시 아래와 같은 오류 발생

 

[ 오류 메시지 (Error message) ]

gangserver@S550-PFB5L:~$ java -jar squirrel-sql-4.8.0-standard.jar 
Command line arguments: 
심각: java.lang.ArrayIndexOutOfBoundsException: Index 70131 out of bounds for length 22674

 

OpenJDK가 설치된 경우 SquirreL SQL 설치 시 동일한 오류가 발생한다.

(openjdk-21-jdk, openjdk-17-jdk, openjdk-11-jdk 중 하나 설치 후 테스트 시 동일한 오류 발생)

 

 

[ 해결 방안 (Solution) ]

1. Oracle JDK 설치 후 기본 JDK Oracle JDK로 설정 후 SQuirreL SQL 설치

(After installing Oracle JDK, set Oracle JDK as the default JDK and then install SQuirreL SQL)

(SQuirreL SQL 설치 후 다시 OpenJDK를 기본 JDK로 설정)

 

또는(or)

 

2. 설치된 OpenJDK 삭제 후 Oracle JDK 설치

(After deleting openjdk, install Oracle JDK.)

 

 

[ 1번 방안 ]

1.1 Oracle JDK 다운로드 사이트에서 Linux용 JDK 다운로드(https://www.oracle.com/java/technologies/downloads/)

 

Download the Latest Java LTS Free

Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.

www.oracle.com

 

리눅스용 x64 Compressed Archive 버전 다운로드 후 설치

(설명은 JDK21로 설명하지만 다른 버전 설치해도 상관없습니다.)

- 다운로드 버전 : JDK 21

- 다운로드 종류 : Linux / x64 Compressed Archive

- 다운로드파일 : jdk-21_linux-x64_bin.tar.gz

- 다운로드 URL : https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz

- 파일 위치 : /home/user

 

1.2 압축 해제

gangserver@S550-PFB5L:~$ tar -xvzf jdk-21_linux-x64_bin.tar.gz

압축 해제된 JDK 폴더 : /home/gangserver/jdk-21.0.6

 

1.3 기본 JDK를 Oracle JDK로 설정 - 파일 맨 아랫 부분에 아래와 같이 추가 (JDK 설치 폴더 다른 경우 맞게 수정)

gangserver@S550-PFB5L:~$ vi .profile

------------------------------------------------------------------------

...

JAVA_HOME=~/jdk-21.0.6

 

PATH=$JAVA_HOME/bin:$PATH

 

export JAVA_HOME PATH

 

------------------------------------------------------------------------

 

1.4 저장 후 .profile 재로딩

gangserver@S550-PFB5L:~$ . .profile

 

1.5 재로딩 후 java 버전 확인

 

gangserver@S550-PFB5L:~$ java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)

 

위와 같이 Oracle JDK로 기본 JDK 설정 정상적으로 된경우

1.6 SQuirreL SQL 설치 진행

 

gangserver@S550-PFB5L:~$ java -jar squirrel-sql-4.8.0-standard.jar 
Command line arguments: 
Cannot find named resource: 'packsLang.xml' AND 'packsLang.xml_eng'

정상 설치 화면 뜸.

 

 

 

[ 2번 방안 ]

2.1 OpenJDK 설치 버전 확인 (테스트하기 위해 21, 17, 11 버전 설치해서 21, 17, 11 버전 설치된 것으로 확인됨)

gangserver@S550-PFB5L:~$ apt --installed list *jdk*
나열 중... 완료
openjdk-11-jre-headless/noble-updates,noble-security,now 11.0.26+4-1ubuntu1~24.04 amd64 [설치됨,자동]
openjdk-11-jre/noble-updates,noble-security,now 11.0.26+4-1ubuntu1~24.04 amd64 [설치됨,자동]
openjdk-17-jre-headless/noble-updates,noble-security,now 17.0.14+7-1~24.04 amd64 [설치됨,자동]
openjdk-17-jre/noble-updates,noble-security,now 17.0.14+7-1~24.04 amd64 [설치됨,자동]
openjdk-21-jdk-headless/noble-updates,noble-security,now 21.0.6+7-1~24.04.1 amd64 [설치됨,자동]
openjdk-21-jdk/noble-updates,noble-security,now 21.0.6+7-1~24.04.1 amd64 [설치됨]
openjdk-21-jre-headless/noble-updates,noble-security,now 21.0.6+7-1~24.04.1 amd64 [설치됨,자동]
openjdk-21-jre/noble-updates,noble-security,now 21.0.6+7-1~24.04.1 amd64 [설치됨,자동]

 

2.2 설치된 OpenJDK 삭제
gangserver@S550-PFB5L:~$ sudo apt remove openjdk*
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다... 완료
상태 정보를 읽는 중입니다... 완료        
glob 'openjdk-11-jdk'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-19-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-jre-zero'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-jdk-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-jdk-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-demo'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-dbg'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-doc'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-jdk'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-jdk-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-dbg'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-doc'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-jdk'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-demo'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-6-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-dbg'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-doc'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-testsupport'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-jdk'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-9-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-demo'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-source'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-source'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-demo'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-6-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-source'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-jre'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-jre-zero'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-8-jdk-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-source'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-20-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-18-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-jre-zero'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-13-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-17-jre-headless'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-dbg'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-11-doc'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-21-jre-zero'에 대해 'openjdk*'를 선택합니다.
glob 'openjdk-12-jre-headless'에 대해 'openjdk*'를 선택합니다.
패키지 'openjdk-18-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-19-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-20-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-6-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-6-jre'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-12-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-13-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-9-jre'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-jre'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-jre-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-dbg'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-jdk'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-jdk-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-demo'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-source'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-jdk-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-dbg'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-demo'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-source'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-doc'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-jdk-headless'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-dbg'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-jdk'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-demo'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-doc'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-source'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-11-jre-zero'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-doc'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-17-jre-zero'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-jre-zero'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-21-testsupport'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-dbg'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-jre'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-jdk'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-demo'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-doc'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-source'는 설치되어 있지 않아, 지우지 않았습니다.
패키지 'openjdk-8-jre-zero'는 설치되어 있지 않아, 지우지 않았습니다.
다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다:
  ca-certificates-java fonts-dejavu-extra java-common libatk-wrapper-java
  libatk-wrapper-java-jni libice-dev libpthread-stubs0-dev libsm-dev
  libx11-dev libxau-dev libxcb1-dev libxdmcp-dev libxt-dev x11proto-dev
  xorg-sgml-doctools xtrans-dev
'sudo apt autoremove'를 이용하여 제거하십시오.
다음 패키지를 지울 것입니다:
  openjdk-11-jre openjdk-11-jre-headless openjdk-17-jre
  openjdk-17-jre-headless openjdk-21-jdk openjdk-21-jdk-headless
  openjdk-21-jre openjdk-21-jre-headless
0개 업그레이드, 0개 새로 설치, 8개 제거 및 0개 업그레이드 안 함.
이 작업 후 671 M바이트의 디스크 공간이 비워집니다.
계속 하시겠습니까? [Y/n] y
(데이터베이스 읽는중 ...현재 214990개의 파일과 디렉터리가 설치되어 있습니다.)
openjdk-11-jre:amd64 (11.0.26+4-1ubuntu1~24.04)를 제거합니다...
openjdk-11-jre-headless:amd64 (11.0.26+4-1ubuntu1~24.04)를 제거합니다...
openjdk-17-jre:amd64 (17.0.14+7-1~24.04)를 제거합니다...
openjdk-17-jre-headless:amd64 (17.0.14+7-1~24.04)를 제거합니다...
openjdk-21-jdk:amd64 (21.0.6+7-1~24.04.1)를 제거합니다...
openjdk-21-jdk-headless:amd64 (21.0.6+7-1~24.04.1)를 제거합니다...
openjdk-21-jre:amd64 (21.0.6+7-1~24.04.1)를 제거합니다...
openjdk-21-jre-headless:amd64 (21.0.6+7-1~24.04.1)를 제거합니다...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1.1ubuntu3) ...
Processing triggers for desktop-file-utils (0.27-2build1) ...

 

2.3 Oracle JDK 다운로드 사이트에서 Linux용 JDK 다운로드(https://www.oracle.com/java/technologies/downloads/)

 

Download the Latest Java LTS Free

Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.

www.oracle.com

 

리눅스용 x64 Compressed Archive 버전 다운로드 후 설치

 

(* Oracle JDK 설치는 위 1번 방안 내용 참고하시기 바랍니다.)

 

2.4 설치 후 확인하여 Oracle JDK로 확인 되면 SQuirrel SQL 설치 시 정상 설치됩니다.

gangserver@S550-PFB5L:~$ java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)

 

gangserver@S550-PFB5L:~$ java -jar squirrel-sql-4.8.0-standard.jar 
Command line arguments: 
Cannot find named resource: 'packsLang.xml' AND 'packsLang.xml_eng'

정상 설치 화면 뜸.

 

728x90
반응형