在CubieBoard2上安装OpenJDK

问题说明

因为想试试在CubieBoard2上装ElasticSearch,但是官方是不提供ARM平台的支持的,所以并没有相应的源可以直接装,打包的deb文件似乎也是X86的,所以只能自己安装JRE后手工运行。

本来应该是个挺简单的事情,但是不知道是不是ARM版的OpenJDK有什么比较妖的问题,没能成功。

测试的环境是Cubieboard2的Nand版debian7,APT里是有openjdk和openjdk-zero(带zero/shark版JIT的),但是两个都安装失败,报错:

Error: missing `server' JVM at `/usr/lib/jvm/java-8-openjdk-armhf/jre/lib/arm/server/libjvm.so'.
Please install or use the JRE or JDK that contains these missing components.

放狗搜到的都是在Raspberry-pi上安装OpenJDK碰到的,都是ARM平台应该差不多。

解决方案

最后在这个《missing jvm server》的回帖里找到最好的解决方案:

sudo apt-get install openjdk-8-jre
# 出错,先不管
cd /usr/lib/jvm/java-8-openjdk-armhf/jre/lib/arm
sudo cp -R client server
sudo apt-get -f install

这样就能成功安装上openjdk的jre,实测可以成功运行ElasticSearch(需要修改配置把JVM内存使用减少到512M,因为CB2总共才1G内存,用默认的1G配置会启动失败)。

推送到[go4pro.org]