如何运行Java软件?


35

在RP上运行Java代码的最佳方法是什么?从Debian / Fedora仓库安装OpenJDK是否可以正常工作?是否应该进行一些调整以提高性能?另外,是否有可用于RP的“轻量级” JVM,其运行速度比OpenJDK的标准JVM更好/更快?如果是这样,如何获得和安装它?


1
请注意,OpenJDK还没有ARM JIT,这使其运行缓慢。
托尔比约恩Ravn的安徒生

看来Oracle的ARM JIT不属于OpenJDK。
托尔比约恩Ravn的安徒生

Answers:


15

对于问题的“轻量级”部分,您可能要考虑许多较小的JVM。

例如,JamVM最初设计为可在RP之类的小型系统中工作,并且它和Cacao(另一个较小的JVM)都可以在debian中作为软件包使用:

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

尽管它们都使用open-jdk类库AFAIK及其类库,这些类库是安装JRE的重要部分(明智的磁盘占用空间)。


11

从存储库安装在Debian上应该可以正常工作:

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

Java似乎在Arch存储库中不可用。

有人可以编辑Fedora的信息吗,我对该发行版一无所知。


3

我已经对运行在raspberry pi上运行的各种缩减JVM感兴趣,但很少有人研究直接将Java编译为机器代码。 http://gcc.gnu.org/java/托管有一个编译器,该编译器可以为您提供来自Java或Java字节码的机器代码。我打算使用gcj的项目最终在被搁置之前就被废弃了,但是编译器被认为是非常适合嵌入式系统的,因此它应该适合树莓派。

在该论坛页面的下半部分,有一个很好的图表,有人比较了各种JVM和gcj的相对性能,http ://www.raspberrypi.org/phpBB3/viewtopic.php ? t = 6330&p = 124107 。请记住,这些基准是在最新的raspbian发行版中的性能大幅提升之前制定的。


现在,六个月后,您是否有在Raspberry上进行此操作的实际经验?
托尔比约恩Ravn的安徒生

2

有没有特别轻巧JDK,我知道的,但是从回购正常的OpenJDK似乎工作确定十岁上下的我。

我说还可以 -就其功能本身而言没有问题,至少我没有发现。其中包括大量应用程序,Swing / AWT似乎也运行良好(尚未尝试过JavaFX。)另一方面,由于缺少JIT,性能并不能满足要求(请参阅此问题)



1

Oracle为发行了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字节码本身。

我没有Raspberry Pi来测试JRE。所以我推测。

使用:cat /proc/cpuinfo/查看Java是否可以支持Raspberry Pi。


1
java标志/proc/cpuinfo表示CPU支持Jazelle扩展。您可以在Wikipedia上阅读有关此内容的信息。
2012年

Jazelle的问题在于,所有开源JVM都无法使用它。
亚历克斯·张伯伦
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.