1、前言

2020年9月份打造好了termux,但是苦于jdk没法安装,只能简单的用ecj(eclipse的java,类似jdk的javac),但是springboot或者tomcat的项目怎么跑啊?

今天为了做培训演示,找到了termux下的openJDK资源,记录下安装的经过。termux的安装和工具准备参考前一篇android下安装termux模拟器-超便携linux

2、git下载openJDK的安装脚本

ssh登录termux,接着下载termux安装openJDK的脚本

123

git clone https://github.com/MasterDevX/Termux-Java.git

cd Termux-Java

chmod 700 installjava uninstall_java.sh

3、下载openJDK的包(可选)

因为步骤2中installjava会下载一个7、80M的openJDK的tar.gz包,为了减少失败,可以用wget先提前下载对应版本的包

1234

dpkg --print-architecture

aarch64

wget https://github.com/Hax4us/java/releases/download/v8/jdk8_aarch64.tar.gz

调整下步骤2下载的installjava脚本,增加已下载tar.gz的判断

1

wget https://github.com/Hax4us/java/releases/download/${tag}/jdk8_${archname}.tar.gz -q

修改成

12345

if [ -f jdk8_${archname}.tar.gz ]; then

ee "\e[32m[*] \e[34mOpen JDK-8 is exist."

else

wget https://github.com/Hax4us/java/releases/download/${tag}/jdk8_${archname}.tar.gz -q

fi

4、安装

看看执行过程有没出错,正常的话应该安装完会出现success提示,如下图

123

bash installjava

Java was successfully installed!

5、测试

也可以参考下图

1234567

java -version

java version "1.8.0_152"

Java(TM) SE Runtime Environment (build 1.8.0_152-b16)

Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

echo $JAVA_HOME

/data/data/com.termux/files/usr/share/jdk8

6、上传springboot项目

先添加springboot启动脚本

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687

#!/bin/bashSERVICE_HOME="$HOME/Java"

SERVICE_NAME="Z_testCode-0.0.1-SNAPSHOT"

SERVICE_JAR="Z_testCode-0.0.1-SNAPSHOT"

XMS="-Xms256M"

XMX="-Xmx512M"

tmpdir="$HOME/Java/tmp"

cd $SERVICE_HOME

PROG=$SERVICE_JAR

PIDFILE=$SERVICE_HOME/$SERVICE_JAR.pid

JARFILE=$SERVICE_HOME/$SERVICE_JAR.jar

status() {

if [ -f $PIDFILE ]; then

PID=$(cat $PIDFILE)

if [ ! -x /proc/${PID} ]; then

return 1

else

return 0

fi

else

return 1

fi

}

case "$1" in

start)

status

RETVAL=$?

if [ $RETVAL -eq 0 ]; then

echo "-----$PIDFILEexists, process is already running or crashed"

exit 1

fi

##检测 java环境

if [ ! -n $JAVA_HOME ]; then

echo "-----Please check JAVA_HOME!"

echo "-----Exist"

exist 1

else

echo "-----Jave home:$JAVA_HOME"

echo "-----Starting$PROG..."

nohup java -server $XMS $XMX -Djava.io.tmpdir="$tmpdir" -jar $JARFILE > $SERVICE_NAME.log 2>&1 &

RETVAL=$?

if [ $RETVAL -eq 0 ]; then

echo "-----$PROGis started"

echo $! > $PIDFILE

exit 0

else

echo "-----Stopping$PROG"

rm -f $PIDFILE

exit 1

fi

fi

;;

stop)

echo "-----Shutting down$PROG"

ps -ef |grep $SERVICE_NAME|grep -v grep |awk '{print $2}'|xargs kill -9

#kill -9 `cat $PIDFILE`

RETVAL=$?

if [ $RETVAL -eq 0 ]; then

rm -f $PIDFILE

else

echo "-----Failed to stopping$PROG"

fi

;;

status)

status

RETVAL=$?

if [ $RETVAL -eq 0 ]; then

PID=$(cat $PIDFILE)

echo "-----$PROGis running ($PID)"

else

echo "-----$PROGis not running"

fi

;;

restart)

$0 stop

$0 start

;;

*)

echo "Usage:$0{start|stop|restart|status}"

;;

esac

7、启动springboot项目

12

chmod 700 startJar.sh

./startJar.sh start

注意步骤6脚本中有定义tmpdir,因为springboot启动的时候,会往linux的/tmp目录创建临时的缓存目录和文件,在termux下会报目录不存在,需要在classpath下自定义

12

tmpdir="$HOME/Java/tmp"

nohup java -server $XMS $XMX -Djava.io.tmpdir="$tmpdir" -jar $JARFILE > $SERVICE_NAME.log 2>&1 &

核对springboot的启动日志,是否正常

8、测试访问

测试springboot项目提前写好的接口

1234567891011

curl http://127.0.0.1:8090/test/demo

[{"id":1,"account":"test1","password":"password1","name":"张三1","sex":0,"company":"testCompany1"},

{"id":2,"account":"test2","password":"password2","name":"张三2","sex":1,"company":"testCompany2"},

{"id":3,"account":"test3","password":"password3","name":"张三3","sex":0,"company":"testCompany3"},

{"id":4,"account":"test4","password":"password4","name":"张三4","sex":1,"company":"testCompany4"},

{"id":5,"account":"test5","password":"password5","name":"张三5","sex":0,"company":"testCompany5"},

{"id":6,"account":"test6","password":"password6","name":"张三6","sex":1,"company":"testCompany6"},

{"id":7,"account":"test7","password":"password7","name":"张三7","sex":0,"company":"testCompany7"},

{"id":8,"account":"test8","password":"password8","name":"张三8","sex":1,"company":"testCompany8"},

{"id":9,"account":"test9","password":"password9","name":"张三9","sex":0,"company":"testCompany9"},

{"id":10,"account":"test10","password":"password10","name":"张三10","sex":1,"company":"testCompany10"}]

大功告成,现在springboot项目也起来了,访问了termux的mariadb,这些需要在写测试springboot项目提前配置好,这里没做介绍。

termux安装参考前一篇android下安装termux模拟器-超便携linux

termux安装java,android下的termux模拟器安装openJDK和运行springboot项目相关推荐

  1. 手机APP制作流程一、Java JDK、Android studio、夜神模拟器安装

    下载JDK 首先下载Java JDK,目前JDK版本有JavaSE8.JavaSE11.JavaSE16,最新的版本功能肯定更强大.也加入了一些新特性,但是对于像我一样新入门的菜鸟来说,8已经足够了. ...

  2. Eclipse搭建android环境及Genymotion模拟器安装问题解决方法

    最近实验室新买了台式电脑,又要重新搭建android环境了,话说自从google被封了之后eclipse搭建android真是不容易了,虽然现在官方推荐使用studio了,但是还是不太习惯studio ...

  3. 浅谈Java/Android下的注解

    什么是注解 java.lang.annotation,接口 Annotation,在JDK5.0及以后版本引入. 注解是代码里的特殊标记,这些标记可以在编译.类加载.运行时被读取,并执行相应的处理.通 ...

  4. centos java 安装路径_Centos7下查询jdk默认安装路径

    今天学习了docker,希望能搭建个springboot运行环境,其中就涉及JDK8.Maven.Mysql.Docker.docker-compose.tomcat.nginx基础环境的安装,下面是 ...

  5. 安装java的rpm_Centos7使用rpm命令安装java

    Centos7使用rpm命令安装java l2qq · 2019-10-23 10:16 字数 2148 评论 0 收藏 0 点赞 0 Centos7使用rpm命令安装java 第一步:下载jdk 官 ...

  6. debian安装java jdk_Linux(Centos、Debian)之安装Java JDK及注意事项(转)

    a.因为Java JDK区分32位和64位系统,所以在安装之前必须先要判断以下我们的Centos.Debian系统为多少位系统,命令如下: uname -a 解释:如果有x86_64就是64位的,没有 ...

  7. mysql 5.5 安装 linux,linux下mysql5.5的安装

    #rpm –qa|grep –i mysql查看已安装的mysql版本 如果有已存在的mysql版本则删除 安装服务端和客户端,去Oracle官网下载: # rpm -ivh MySQL-serve ...

  8. Linux redis安装教程,Linux 下redis5.0.0安装教程详解

    Linux redis5.0.0安装,教程如下所示: 1.从官网下载,然后传到服务器,tar -zxvf解压 2.进入redis ? 3.安装:make, (1)若提示:: gcc: Command ...

  9. centos 7 如何验证oracle安装成功_linux下Oracle数据的安装详解

    第二章:CentOS下Oracle用户环境配置和Oracle11g的安装: 1.下载Oracle安装包: linux.x64_11gR2_database_1of2.zip 和 linux.x64_1 ...

  10. linux系统qt中make安装,Linux系统下Qt的基本安装和配置

    Qt Creator支持中文,启动速度比Eclipse.Netbeans更快,界面也更美观,跟输入法Fcitx协作良好(光标跟随). 你既可以把Qt Creator当代码编辑器作为vim辅助,好处在于 ...

最新文章

  1. django文件上传
  2. json如何把键名作为变量?
  3. PMcaff会员圣诞礼物大放送!
  4. VTK:Utilities之KnownLengthArray
  5. CSS--布局模型,颜色值,长度值
  6. 一款开源免费且快速,高效和安全的跨平台备份程序:Restic使用教程
  7. 小程序入门学习03--navigator组件
  8. Chatbot ⾖瓣电影爬⾍简析
  9. 欧洲2015年新设太阳能约8GW 为4年来首增
  10. 空军预警学院计算机与网络,空军预警学院学报
  11. 第二阶段团队站立会议02
  12. 服务器器ip的A段B段C段是什么意思有什么意义
  13. 小川OpenCV100例 之 识别定位二维码
  14. 计算机共享找不到网络连接失败,局域网电脑无法访问共享文件网络共享失败如何解决...
  15. LayoutManager实现翻页动画
  16. SD SDHC SDXC
  17. arduino leonardo 入门
  18. ICRA2022 SLAM相关论文整理
  19. 计算机网络实训报告动态路由,实验报告OSPF动态路由的配置
  20. 力扣(707.面试题02.07)补9.16

热门文章

  1. 物联网人工智能软件市场现状研究分析报告 -
  2. VoLTE信令泛读补充业务3:呼叫保持业务之保持流程
  3. 参数曲面matlab,MATLAB空间曲面的实现方法
  4. SLAM之PTAM学习笔记
  5. 自制hdmi线一头改vga图_VGA连接线接口定义及引线焊接教程,VGA线不够长时可用网线代替?...
  6. 北斗卫星导航系统的研究及应用
  7. 电子设计教程21:晶体管差分放大电路
  8. 3dmax java,基于Java 3D与3DS MAX的虚拟校园设计
  9. PcShare,PcClient 后门手工解决方案
  10. photoshop cs3 调色教程 让夏天成秋天