Java 소프트웨어를 어떻게 실행할 수 있습니까?


35

RP에서 Java 코드를 실행하는 가장 좋은 방법은 무엇입니까? 데비안 / 페도라 저장소에서 OpenJDK를 설치해도 괜찮습니까? 성능 향상을 위해 사용해야 할 부분이 있습니까? 또한 OpenJDK의 표준 JVM보다 우수 / 빠른 실행을 위해 RP에 사용할 수있는 "경량"JVM이 있습니까? 그렇다면 어떻게 구하여 설치합니까?


1
OpenJDK에는 아직 ARM JIT가 없으므로 속도가 느려집니다.
Thorbjørn Ravn Andersen

Oracle의 ARM JIT는 OpenJDK의 일부가 아닌 것으로 보입니다.
Thorbjørn Ravn Andersen

답변:


15

질문의 "가벼운"부분에 대해 고려해야 할 여러 개의 작은 JVM이 있습니다.

예를 들어 JamVM은 원래 RP와 같은 작은 시스템에서 작동하도록 설계되었으며 Cacao (또 다른 작은 JVM)는 데비안 패키지로 제공됩니다.

icedtea-7-jre-jamvm
icedtea-7-jre-cacao

둘 다 open-jdk 클래스 라이브러리 AFAIK와 JRE 설치의 큰 부분 (디스크 풋 프린트) 인 클래스 라이브러리를 사용합니다.


11

저장소에서 설치하면 데비안에서 잘 작동합니다 :

sudo apt-get clean
sudo apt-get update
sudo apt-get install openjdk-6-jre

Arch repo에서 Java를 사용할 수없는 것 같습니다.

누군가 Fedora에 대한 정보로 편집 할 수 있습니까, 나는 그 배포판에 대해 전혀 모른다.


3

라즈베리 파이에서 실행되는 다양한 컷 다운 JVM을 실행하는 데 많은 관심을 보았지만 기계 코드로 Java를 직접 컴파일하는 사람은 거의 없었습니다. http://gcc.gnu.org/java/ 는 java 또는 java 바이트 코드에서 기계 코드를 제공 할 수있는 컴파일러를 호스팅합니다. gcj를 사용하려고하는 프로젝트는 땅에서 떨어지기 전에 폐기되었지만 결국 컴파일러는 임베디드 시스템에 적합한 것으로 청구되므로 라즈베리 파이에 잘 맞아야합니다.

이 포럼의 반쪽에는 gcj http://www.raspberrypi.org/phpBB3/viewtopic.php?t=6330&p=124107 뿐만 아니라 다양한 JVM의 상대적인 성능을 비교하여 만든 멋진 그래프가 있습니다. 이 벤치 마크는 최신 라즈 비아 배포판에 포함 된 성능이 크게 향상되기 전에 만들어진 것입니다.


6 개월 후 Raspberry에서이 작업을 수행 한 경험이 있습니까?
Thorbjørn Ravn Andersen

2

이 내가 아는 것을 특별한 경량 JDK는 없다,하지만 REPO에서 정상 오픈 JDK는 작업 보인다 확인 틱 나를 위해.

나는 ok-ish 라고 말합니다. 기능 자체에는 아무런 문제가 없습니다. 적어도 내가 찾은 것은 없습니다. 헤드리스 응용 프로그램을 포함하여 Swing / AWT도 잘 작동하는 것 같습니다 (JavaFX를 사용해 보지 않았습니다). 반면에 JIT가 없기 때문에 성능이 제대로 유지되는 것은 아닙니다 ( 이 질문 참조 ).



1

오라클은에 대한 Java 8 (및 Java 7)을 출시했습니다 ARM. 이 페이지 의 링크를 사용하여 현재 Raspberry Pi에 가장 적합한 Java 버전을 얻으십시오.

이것은 또한 작동해야합니다 :

sudo apt-get update
sudo apt-get install oracle-java8-jdk

0

JVM에서 작동하는 방식은 아니지만 Raspberry Pi의 ARM SoC가 Java 바이트 코드 자체를 실행할 수 있다는 것을 알고 있습니다.

JRE를 테스트 할 Raspberry Pi가 없습니다. 그래서 나는 추측한다.

사용 : cat /proc/cpuinfo/Java가 Raspberry Pi를 지원할 수 있는지 확인하십시오.


1
java플래그 /proc/cpuinfo는 CPU가 Jazelle 확장을 지원함 을 의미합니다. wikipedia에서 이에 대해 읽을 수 있습니다 .
Krzysztof Adamski

Jazelle의 문제점은 오픈 소스 JVM에서 사용할 수 없다는 것입니다.
Alex Chamberlain
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.