嵌入式arm linux Java运行环境搭建和注意事项
嵌入式arm linux Java运行环境搭建和注意事项
- 我的开发硬件环境
- 搭建步骤
- 1. 下载 ORacle 公司的ejdk-8u211-linux-arm-sflt.tar.gz(软件浮点版本,这个很重要,根据自己的板子硬件选。不知到就只有一个个试试) (下载地址:[link](https://www.oracle.com/java/technologies/java-se-embedded-archive-downloads.html))
- 2. 按照documentation 的 quick installation 安装即可
- 3. 从tar包中提取软件:
- 4. 验证安装(之前有一步配置ejdk的环境变量,其实可以不用进行) 转到ejdk的bin目录下,执行 ```
- 5. 创建在嵌入式linux可用的 jre ([Create Your JRE with jrecreate](https://docs.oracle.com/javase/8/embedded/develop-apps-platforms/jrecreate.htm#CACEFBDE))
- 6. 将生成的jre 拷贝到你的嵌入式板子上,比如/usr/ 目录下。然后设置环境变量。在/etc/profile中添加:
- 7. 验证是否安装成功:
- 注意事项
- 验证安装 出现 Java :not found
- 1.考虑环境变量是否配置正确(配置完profile 接的source一下,更新环境变量)
- 2. 考虑 共享库是否都有 在pc的linux上用 readelf -d java 查看jre/bin目录下的java文件,可以看到java运行需要的共享库,可以看见 java这个程序 需要:
- 3.确保第一步执行正确的话,考虑ejdk 版本(我之前为了在这个板子上搭环境,试了很多个版本,版本的区别主要是 硬件浮点和软件浮点,以及gcc的参数。最后发现我的板子适合软件浮点的版本 全名:ejdk-8u211-linux-arm-sflt.tar.gz [下载地址](https://www.oracle.com/java/technologies/javaseembedded8u211-downloads.html))
- 4. 这里的选型只是参考,要根据你板子来选。不知道的话就只有像我一样一个个试,4412虽然有硬件浮点功能,可不知道怎么就是用不了硬件浮点的版本。希望有大神可以给我解答下。
- java应用程序开发ing
- 要注意pc上的jdk版本要和开发板的jre版本相同,不能跨版本
我的开发硬件环境
tiny4412,友善之臂的开发板
搭建步骤
1. 下载 ORacle 公司的ejdk-8u211-linux-arm-sflt.tar.gz(软件浮点版本,这个很重要,根据自己的板子硬件选。不知到就只有一个个试试) (下载地址:link)
2. 按照documentation 的 quick installation 安装即可
参考 link:2 Quick Start for Platform Developers
3. 从tar包中提取软件:
$ cd /usr$ gunzip *.gz$ tar -xvf *.tarList of unpacked files ...
4. 验证安装(之前有一步配置ejdk的环境变量,其实可以不用进行) 转到ejdk的bin目录下,执行 ```
bin/jrecreate.sh --help
$ cd $EJDK_HOME
$ bin/jrecreate.sh --help
Usage: jrecreate --help
5. 创建在嵌入式linux可用的 jre (Create Your JRE with jrecreate)
使用bin目录下的jrecreate.sh 脚本创建,详细参数可见上述链接
参数的主要区别是 安装什么功能的java 环境,可以考虑自己的硬件资源,选择合适的参数。我发现完整版的jre大概35M左右,板子还是能用的,所以使用的是完整安装:
$ bin/jrecreate.sh --dest (+你安装的路径/jre) //这条命令会在你设置的目录下创建 jre 目录。也就是我们要的目录
// 显示如下:(具体参数的值根据你选则的版本和脚本执行参数不一样而不同)
Building JRE using options Options {ejdk-home: /home/xxxx/ejdk/ejdk<version>dest: /tmp/testjretarget: linux_i586 vm: minimal runtime: compact1 profiledebug: falsekeep-debug-info: falseno-compression: falsedry-run: falseverbose: falseextension: []
}
6. 将生成的jre 拷贝到你的嵌入式板子上,比如/usr/ 目录下。然后设置环境变量。在/etc/profile中添加:
export JAVA_HOME=/usr/jre/
export PATH=$PATH:${JAVA_HOME}/bin
7. 验证是否安装成功:
$ java -version //若有提示信息输出则成功。
注意事项
验证安装 出现 Java :not found
1.考虑环境变量是否配置正确(配置完profile 接的source一下,更新环境变量)
2. 考虑 共享库是否都有 在pc的linux上用 readelf -d java 查看jre/bin目录下的java文件,可以看到java运行需要的共享库,可以看见 java这个程序 需要:
自己取自己的arm linux 的根文件系统中的lib文件夹中找打需要的库拷贝到开发板jre/lib/arm下就可以了
3.确保第一步执行正确的话,考虑ejdk 版本(我之前为了在这个板子上搭环境,试了很多个版本,版本的区别主要是 硬件浮点和软件浮点,以及gcc的参数。最后发现我的板子适合软件浮点的版本 全名:ejdk-8u211-linux-arm-sflt.tar.gz 下载地址)
4. 这里的选型只是参考,要根据你板子来选。不知道的话就只有像我一样一个个试,4412虽然有硬件浮点功能,可不知道怎么就是用不了硬件浮点的版本。希望有大神可以给我解答下。
java应用程序开发ing
要注意pc上的jdk版本要和开发板的jre版本相同,不能跨版本
嵌入式arm linux Java运行环境搭建和注意事项相关推荐
- Java运行环境搭建与Hello world
Java基础 Java特性和优势 简单性 面向对象 可移植性 高性能 分布式 动态性 多线程 安全性 健壮性 Java三大版本 JavaSE: 标准版(桌面程序,控制台开发-) JavaMe: 嵌入式 ...
- Ubuntu安装Eclipse-cpp教程(含java运行环境搭建)
转自:http://blog.csdn.net/u010333084/article/details/69568849 网络上各种相关的博客教程不胜枚举,都写的很好很详细,但是正因为太详细了,反而让许 ...
- linux java运行环境_linux(centos)中java运行环境_jdk安装与配置 | OPS技术联盟
系统版本 [root@iZwz95n2hxcdh4x6vicjmgZ ~]# cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core) ...
- Linux服务器运行环境搭建(四)——Tomcat安装
官网地址:http://tomcat.apache.org 官网下载地址(Tomcat6):http://tomcat.apache.org/download-60.cgi,Windows下载wind ...
- Linux服务器运行环境搭建(二)——Redis数据库安装
官网地址:http://redis.io/ 官网下载地址:http://redis.io/download 1. 下载Redis源码(tar.gz),并上传到Linux 2. 解压缩包:tar zxv ...
- java linest_Java运行环境搭建的图文教程
1.Java运行环境搭建,对于初学者来说,主要下载安装jdk即可,windows操作系统再配合记事本,即可进行java程序开发.后续的学习以及工作中需要使用IDE工具进行开发,常用IDE工具是ecli ...
- 嵌入式系统Linux Arm安装net6运行环境
嵌入式系统Linux Arm安装net6运行环境 1.环境介绍 2.详细步骤 2.1 根据手册进行设备通电,系统启动. 2.2 网络连接及设置本机IP 2.2 使用Telnet访问Arm系统 2.3 ...
- 用QEMU模拟ARM开发板,搭建Linux kernel运行环境
前言 有的时候我们想调试linux kernel或者linux应用程序,但是又没有硬件环境,这个时候可以选择用模拟器的方法,模拟出一个硬件环境. Android emulator Android系统的 ...
- 基于Linux服务器的JAVA开发环境搭建
Linux服务器开发环境搭建 Linux安装Java 一.使用yum查询JDK 二.执行安装命令 三.验证java是否安装成功 四.安装开发环境 Linux安装Nginx 一.安装前环境检查 二.下载 ...
最新文章
- 如何使用VB编写Excel的COM组件
- Spring(一)容器
- 为什么Node约定,回调函数的第一个参数必须是err(如果没有错误该参数就是null)?...
- 【Python3 SelectKBest 调用personer出现的错误】
- Constructor总结
- leetcode283. 移动零 比官方更好的解法。
- fscanf的返回值未成功输入的元素个数 .xml
- STM32H743+CubeMX-串口非空闲中断接收
- 7-21 求特殊方程的正整数解 (15 分)
- 2021年NBA季后赛第二轮晋级预测
- java代码启动spring_从0开始学JAVA之《Spring框架-启动过程》
- “APP杀手”?微信小程序瞬间原形毕露
- Forking AfterBurn into Maya
- b h em strong mark
- 前端笔记—第4篇CSS基础知识2
- 按学号查找学生信息 用c语言表达,学生信息管理系统C语言编程.docx
- SIM868使用笔记
- 技校自我鉴定范文计算机600,技校毕业个人自我鉴定范文
- MAC系统下测试IP+端口
- 《Python编程入门到实践》 第四章 操作列表