linux运行完 java -version 命令后出现bash: /usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java: 权限不够
时间: 2023-07-29 13:11:23 浏览: 168
这个问题可能是因为你没有足够的权限来运行Java命令。你可以尝试以下解决方法:
1. 使用sudo命令以管理员身份运行Java命令:
```
sudo java -version
```
2. 检查Java可执行文件的权限,确保它可以被执行:
```
ls -l /usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java
chmod +x /usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java
```
3. 确认你安装的Java版本是否正确,并且JAVA_HOME环境变量是否正确设置:
```
echo $JAVA_HOME
```
如果以上方法都不起作用,可能需要重新安装Java并确保以管理员身份运行安装命令。
相关问题
root@xiaotengteng:/usr/local# java -version -bash: /usr/local/jdk1.8.0_202/bin/java: cannot execute binary file: Exec format error
这个错误可能是因为你的系统架构与 Java 执行文件不匹配导致的。如果你的系统是 64 位的,而你下载的 Java 执行文件是 32 位的,则会出现这个错误。你可以通过以下步骤来解决这个问题:
1. 确认你的系统是 32 位还是 64 位,可以使用以下命令:
```
uname -a
```
如果输出中包含 x86_64,则表示你的系统是 64 位。
2. 下载与你系统匹配的 Java 执行文件,如果你的系统是 64 位的,则需要下载 64 位版本的 Java 执行文件。
3. 安装下载的 Java 执行文件,可以参考官方文档。
4. 设置 Java 环境变量,例如在 ~/.bashrc 文件中添加以下内容:
```
export JAVA_HOME=/usr/local/jdk1.8.0_202
export PATH=$JAVA_HOME/bin:$PATH
```
然后执行以下命令使环境变量生效:
```
source ~/.bashrc
```
然后再次执行 java -version 命令,应该就可以正常输出 Java 版本信息了。
bash: /usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java: 权限不够
这个错误提示表明你在运行 `/usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java` 命令时没有足够的权限。通常情况下,非特权用户没有权限在 `/usr/local` 目录下执行文件。
你可以通过以下两种方法解决这个问题:
1. 使用 root 用户或者具有 sudo 权限的用户来运行命令。
```
sudo /usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java
```
2. 将 `/usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/java` 添加到 PATH 环境变量中,这样你就可以在任何目录下运行 `java` 命令了。
```
export PATH=$PATH:/usr/local/jdk1.8.0_371/jdk1.8.0_211-amd64/bin/
```
阅读全文