64 비트 버전 외에 32 비트 Java를 설치할 수 있습니까?


14

일반적인 개발의 경우 패키지 관리자와 함께 Java 개발 키트 (OpenJDK)를 설치할 때 제공되는 64 비트 VM을 사용하고 있습니다.

그러나 64 비트 Java VM에서 작동하지 않는 Java 응용 프로그램 (기본 라이브러리 포함)이 있습니다. ( SoapUI 가 그와 같은 후보 인 것처럼 보입니다 . 버전 4.0.1 및 4.5 베타 1에서는 64 비트 VM에서 실행될 경우 분할 오류로 실패합니다.)

64 비트 버전 외에도 openjdk-6-jre의 i386 버전을 설치하려고했지만 적법성이 거부되었습니다 (기존 64 비트 버전과 충돌 함). 32 비트 버전으로 openjdk-jre-7을 설치하려고해도 마찬가지입니다.

에 대한 답변 설치 제안 된 64 비트 시스템에서 Java 32 비트 응용 프로그램을 실행할 수ia32-sun-java6-bin 있지만이 이름 (또는 ia32Java 포함) 이 포함 된 패키지는 없습니다 .

전체 시스템 Java 설치를 32 비트로 전환하지 않고 SoapUI를 실행하려면 어떻게해야합니까?


실제로 다른 스크립트를 전달하기 위해 쉘 스크립트를 편집하여 64- 비트 버전으로 soapUI를 실행할 수있었습니다. 정확히 무엇을했는지 찾아봐야합니다.
Paŭlo Ebermann 2016 년

리포지토리에서 64 비트 및 32 비트 Java를 모두 설치 하려면 askubuntu.com/questions/111947/… 을 참조하십시오 . 기본값도 변경할 수 있습니다.
user68186

답변:


4

여러 버전의 Java를 설치하는 것은 매우 쉽습니다. 조금 더 어려운 (읽기 : 지루한) 변덕스러운 버전 사이에서 전환하는 것입니다.

tldr

  1. 적당한 것을 얻다
  2. 다른 쪽을 풀다
  3. 원하는 경로에 따라 내보내기 경로

적절한 버전을 얻으십시오

주로 사용할 버전을 결정하십시오. 또는 자동 업데이트를 원하는 것을 결정하십시오. 또는 동전을 뒤집습니다. 당신은 사용할 필요가 없습니다 apt-get; 시스템에서 두 패키지를 수동으로 유지 관리하십시오 (다음 제목 참조).

요점은 : Ubuntu의 패키지 관리자를 사용하여 java와 같은 하나의 패키지 버전을 유지 관리하는 것이 더 쉽다는 것입니다. 나머지는 돌봐 줄거야

다른 쪽을 풀다

jdk tarball을 다운로드하십시오. 에 추출하십시오 /opt.

그들 사이를 전환

패키지 관리자가 기본 설치를 처리하도록했습니다. 필요할 때 다른 변수를 내보내십시오. 나는 커맨드 라인에서 많은 일을하므로 나에게는 괜찮은 해결책이다. 나는 귀찮게 :

export JAVA_HOME=/opt/jdk
export PATH=$JAVA_HOME/bin:$PATH

또한, 나는 게으르고 증분 jdk 업그레이드마다 .bashrc 및 기타 스크립트를 재구성하는 것을 좋아하지 않기 때문에 symlink- jdk/> jdk1.6.0_3/.

관심있는 환경 변수 :

JAVA_LIBDIR
JNI_LIBDIR
JAVAJNI_LIBDIR
JVM_ROOT
JAVA_HOME
PATH

.debtarball 대신 다른 아키텍처에 대한 정보를 얻을 수 없었 습니까?
0xC0000022L

@ 0xC0000022L 아이디어는 각 버전을 자체 디렉토리에 포함하는 것입니다. 당신이 토론으로 그렇게 할 수 있다면, 좋습니다!
djeikyb

2

설치

먼저 Sun에서 최신 32 비트 JDK (JRE 아님)를 다운로드 하십시오. 당시 이것은 jdk-6u7-linux-i586.bin이었습니다.

Java 패키지를 설치하십시오.

sudo apt-get install java-package 

이제 java-package를 사용하여 다운로드 한 바이너리에서 .deb 패키지를 빌드하십시오. 32 비트 패키지를 만들도록 속 여야합니다.

DEB_BUILD_GNU_TYPE=i486-linux-gnu DEB_BUILD_ARCH=i386 fakeroot make-jpkg jdk-6u7-linux-i586.bin 

.deb 패키지가 생성됩니다. 어떤 이유로 패키지 이름에 _amd64 접미사가 있습니다. 패키지를 설치하십시오 :

sudo dpkg -i sun-j2sdk1.6_1.6.0+update7_amd64.deb 

업데이트 대안을 사용하여 새 JDK를 선택하십시오. /usr/lib/j2sdk1.6-sun에 설치되었습니다.

sudo update-alternatives --config java 

java -version을 실행하면 올바른 버전이 표시됩니다.

java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) Server VM (build 10.0-b23, mixed mode)

32 비트 이클립스

SWT에 기본 코드가 포함되어 있기 때문에 32 비트 버전의 Eclipse를 다시 설치해야했습니다. 또한 ~ / .eclipse 디렉토리를 삭제해야했습니다. 그렇지 않으면 Eclipse가 시작되지 않습니다 (새 버전의 플러그인을 다시 설치해야 함). 마지막으로, 설치 위치 (/usr/lib/j2sdk1.6-sun)를 사용하여 Java-> 설치된 JRE에 새 JRE를 추가하고 기본값으로 선택하십시오.

심판


고마워, 나는 이것을 시도 할 것이다 ... 32 비트를 기본값으로 원하지는 않지만 64 비트로 작동하지 않는 소수의 프로그램에만 사용하십시오.
Paŭlo Ebermann

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.