Java에서 JVM 변경


18

나는 최근에 위키 페이지 에서 다른 JVM을 발견하고 어설프게 시작한다고 생각했습니다. Ubuntu에서 Java를 구성하는 방법에 대한 설명서를 찾기가 어려웠습니다.

사용중인 JRE 또는 JDK를 변경하고 싶다고 말하면 터미널을 열어서 말할 수 있습니다.

sudo update-alternatives --config java

그런 다음 설치된 버전 중 하나를 선택하십시오.

JVM의 권리를 이해하고 있다면 (아마도 그렇지 않을 수도 있음) 대체 JVM (예 : JAMVM)을 사용하도록 openJDK를 구성하고이를 실행할 수 있습니다.

jamvm -jar foo.jar

두 가지 질문

1 : JVM 개념이 있습니까? 에서와 같이, 이것이 가능합니까?

2 : 그렇다면 어떻게 JVM을 구성하고 기본값을 선택한 JVM으로 전환합니까?


좋아요, 질문에 대한 좋은 답변을 추가하고 (자신이 직접 답변 할 수 있음) 투표하십시오!
Bruno Pereira

@BrunoPereira 완료! 잘만되면 그것은 무리를 덮는다.
오버톤

답변:


18

런타임에 Java로 땜질하는 것에 대한 참조로 이것을 자유롭게 사용하십시오.

JRE 선택

JRE를 선택하려면

sudo update-alternatives --config java

이것은 다음과 같은 결과를 줄 것입니다.

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-openjdk/jre/bin/java         1061      auto mode
* 1            /usr/lib/jvm/java-6-openjdk/jre/bin/java         1061      manual mode
  2            /usr/lib/jvm/java-6-sun/jre/bin/java             63        manual mode
  3            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode

그런 다음 숫자 선택을 통해 원하는 Java 런타임을 선택할 수 있습니다.


JVM 선택

Sun / Oracle에는 -server 및 -client라는 두 가지 JVM 선택 항목이 있습니다. Java 런타임 환경으로 OpenJDK를 선택하면 추가 옵션이 있습니다.

java다른 매개 변수없이 터미널에 입력 하면 도움말에 여러 선택적 VM이 나열됩니다. 어느 것이 OpenJDK와 함께 제공되는지 확실하지 않지만 3 가지 인기있는 것은 JamVM, Zero 및 Cacao입니다.

이것을 사용하려면 간단히 입력하십시오.

java -jamvm 'your other parameters here'
java -cacao 'your other parameters here'
java -zero 'your other parameters here'
java -server 'your other parameters here

-server VM이 일반적으로 기본값입니다. -client64 비트 IcedTea6에서는 -server와 동일한 버전을 실행하는 것으로 지정할 수도 있습니다 . 다른 사람들이있을 가능성이 높지만 기본 옵션이 가장 반응이 빠릅니다.


메모리 설정

마지막으로, Java 메모리 설정 방법

java -Xmx1024m -Xms128m 'your other parameters here'

Java 프로그램에 허용되는 메모리를 최대 1024MB로 제한하고 초기 메모리 크기를 128MB로 설정합니다. 이것은 최소 시스템 요구 사항을 정의하는 좋은 방법입니다. 자바 6 man 페이지 에 대한 java명령은 이러한 옵션 등을 설명합니다.

그게 다야. 누구든지 우분투에 대한 추가 Java 조정이 있으면 주석에 남겨두고 추가하겠습니다.


$ JAVA_HOME / bin 및 $ JAVA_HOME / jre / bin에는 대체 시스템의 모든 항목을 업데이트하기 위해 스크립트를 요구하는 약 47 개의 실행 파일이 있습니다. /usr/lib/jvm/.java*.jinfo 파일을 참조하십시오.
사용자 알 수 없음

기본 JVM을 어떻게 설정합니까? 내가 들었던 것에서, -server는 시작 시간이 길기 때문에 -client가 사용자 설치의 기본값이 아닌 이유는 무엇입니까?
dhardy

실제로 기본값을 변경하는 방법이 있습니까? 아니면 매번 (또는 개별 시작 스크립트마다) JVM 및 메모리 제한을 명시 적으로 설정해야합니까?
aij

0

OpenJDK 설치에서 기본 JVM을 설정하려면 / usr / lib / jvm / java- version -openjdk- arch / jre / lib / arch /jvm.cfg에 있는 jvm.cfg 구성 파일을 편집해야합니다.

우분투는 OpenJDK 버전에 따라 / etc / 디렉토리 안에 jvm.cfg 파일을 노출시킵니다. / etc / java-6-openjdk / jvm- arch .cfg 또는 / etc / java-7-openjdk / jvm- arch .cfg

jvm.cfg 파일 내의 최상위 -jvmname KNOWN 행이 기본 JVM을 결정합니다.

사용 가능한 구성 도구가 없으므로 이러한 파일을 수동으로 찾아서 편집해야합니다.

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