diff --git a/docs/.vitepress/config/nav.ts b/docs/.vitepress/config/nav.ts index bf0648890..7a419c38b 100644 --- a/docs/.vitepress/config/nav.ts +++ b/docs/.vitepress/config/nav.ts @@ -11,7 +11,7 @@ export const nav: DefaultTheme.Config['nav'] = [ activeMatch: '/categories/' }, { - text: '我的小课', + text: '我的小册', items: [ { text: 'MyBatis快速入门', link: '/courses/mybatis/index', activeMatch: '/courses/mybatis/' } ], diff --git a/docs/categories/issues/2022/08/11/执行Shell脚本,报java command not found.md b/docs/categories/issues/2022/08/11/执行Shell脚本,报java command not found.md new file mode 100644 index 000000000..b7d5fd83e --- /dev/null +++ b/docs/categories/issues/2022/08/11/执行Shell脚本,报java command not found.md @@ -0,0 +1,57 @@ +--- +title: "执行Shell脚本,报java: command not found" +author: 查尔斯 +date: 2022/08/11 20:19 +categories: + - Bug万象集 +tags: + - Linux + - Shell +--- + +# 执行Shell脚本,报java: command not found + +## 问题描述 + +**C:** 今天笔者在公司的 dev 环境服务器上,将一个 Java 程序启动脚本做成了一个系统服务。本来是一件很简单的事情,但是在启动服务时,却报错了。 + +报的错误也是言简意赅:java: command not found。很直白的告诉了你,它找不到 java 命令。 + +![202208112010100](../../../../../public/img/2022/08/11/202208112010100.png) + +## 原因分析 + +既然是找不到 java 命令,首先要排查的自然是服务器里究竟有没有安装和配置好 Java 环境了,用 `java -version` 命令检测一下就可以了。 + +```shell +[root@business11 ~]# java -version +java version "1.8.0_202" +Java(TM) SE Runtime Environment (build 1.8.0_202-b08) +Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode) +``` + +Java 环境是配置好的,那还得是看脚本自身的问题了。其实,这个问题以前印象里也出现过,不过是很久以前初次使用 Shell 脚本的时候了,最终的问题点是因为直接写的脚本内容,没有添加 `#!/bin/bash` 声明导致的。 + +打开脚本内容看了看,这个声明也加着呢。 + +```shell +#!/bin/bash + +Java 启动脚本内容······ +``` + +## 解决方案 + +既然以往的经验不能提供帮助,那就对症下药,提示说找不到 java 命令,那说明它识别不到 Java 环境配置,帮它一把就得了呗。复制一份 Java 环境配置,放在脚本内容前,相当于每次执行这个脚本的时候,先做一次临时环境配置。 + +::: warning 笔者说 +如果你要使用下方的配置,不要直接复制了事,记得将配置中的 JDK 安装路径,替换为你自己实际的 JDK 安装路径。 +::: + +```shell +#!/bin/bash +JAVA_HOME=/usr/local/java/jdk1.8.0_202 # 如果你要使用,记得替换为你自己实际的 JDK 安装路径 +export PATH=$PATH:$JAVA_HOME/bin + +Java 启动脚本内容······ +``` diff --git a/docs/public/img/2022/08/11/202208112010100.png b/docs/public/img/2022/08/11/202208112010100.png new file mode 100644 index 000000000..1fa8990d4 Binary files /dev/null and b/docs/public/img/2022/08/11/202208112010100.png differ