麒麟系统arm64或aarch64架构下docker打包jdk1.8镜像
1.net.sf.json.JSONException: A JSONObject text must begin with '{'报错处理方案。问题起因:一般情况出现这个错误的原因是头部包含\ufeff ,而非{开头,java在获取到这个json字符串时候发现没有{个认为是格式不对所以抛出了异常。那么问题来了\ufeff 这是哪来的呢?网上搜索后发现原来是文本保存时包含了BOM(Byte Ord
·
1.下载到aarch64(arm)版本jdk-1.8-xxx.tar.gz
2.mkdir /home/jdk,将下载好的aarch64(arm64)jdk-1.8-xxx.tar.gz压缩包放进去
3.在和压缩包同目录下touch Dockerfile(注意该文件没有后缀名)然后将以下内容复制到Dockfile中:
FROM centos:latest
MAINTAINER sunwei
ADD jdk-8u291-linux-aarch64.tar.gz /usr/local
ENV JAVA_HOME /usr/local/jdk1.8.0_291
ENV JRE_HOME /usr/local/jdk1.8.0_291/jre
ENV PATH $JAVA_HOME/bin:$PATH
注意上方的jdk文件名称,JAVA_HOME最后的jdk1.8.0_291为jdk压缩包解压后的文件夹名称,JRE_HOME 同理
4.执行命令:docker build -t jdk-aarch64-18u221:v1 .(注意这里还有一个.,jdk-aarch64-18u221:v1为镜像名称)
5.上命令成功后:执行命令docker run -it jdk-aarch64-18u221:v1 /bin/bash
6.输入java -version
出现jdk版本则安装成功
更多推荐
已为社区贡献1条内容
所有评论(0)