点击登录,精彩内容等着你

centos 7.5安装jdk后,运行service启动jar包,报错 main process exited, code=exited, status=203/EXEC

全栈侠客

2023-03-12
其实核心原因是,jdk通过/etc/profile设置环境变量后,java命令的软连接未建立起来

一、问题描述

通过jenkins编译,远程调用centos的对应的脚本,然后启动对一个服务service
服务是通过以下命令进行启动jar包


ExecStart=/usr/bin/java -Xverify:none -Xms1024m -Xmx1024m -Xmn128m -XX:PermSize=96m -XX:MaxPermSize=96m -XX:+UseConcMarkSweepGC -Xnoclassgc -XX:CMSInitiatingOccupancyFraction=85 -jar /opt/leanbootcom/*-1.0.jar


这里使用到/usr/bin/java 可是到对应的目录中,并没有这个文件或者文件目录
经过查询,原来/usr/bin/java是属于软连接,是链接到jdk/bin/java的命令

二、解决问题

  • 确保环境变量
    /etc/profile文件结尾添加:

    export JAVA_HOME=/usr/local/java/jdk1.8.0_361
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
    export PATH=$JAVA_HOME/bin:$PATH

  • 查看java安装目录
    which java
    /usr/local/java/jdk1.8.0_361/bin/java

  • 建立软连接
    ln -s /usr/local/java/jdk1.8.0_361/jdk/bin/java /usr/bin/java

  • 简易centos安装jdk1.8,使用工具摆脱难记的命令行
    centos7快速安装jdk1.8,快速部署新环境

搞定了

阅读 1538     最后编辑 2023-04-01 07:03
文章补充
评论(0) 发表新评论
  • ...暂无评论...

我是有底线的 评论与点赞5分钟更新一次
回复评论
取消关闭

请先登录