我的 Ubuntu 版本是 Ubuntu 22.04.2 LTS。我有一个用户(ahmet),它是 sudo 的成员。我下载了 intellij idea,我想为每个人使用它的 mvn lib。我按照此链接编辑了 /etc/bash.bashrchttps://linuxhint.com/add-path-permanently-linux/当我尝试执行mvn时,出现三种情况:
正常方式:
ahmet@ahmet:~$ mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /opt/idea-IU-231.8109.175/plugins/maven/lib/maven3
Java version: 11.0.18, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.19.0-41-generic", arch: "amd64", family: "unix"
以 root 身份:
ahmet@ahmet:~$ sudo su
root@ahmet:/home/ahmet# mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /opt/idea-IU-231.8109.175/plugins/maven/lib/maven3
Java version: 11.0.18, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.19.0-41-generic", arch: "amd64", family: "unix"
使用 sudo:
ahmet@ahmet:~$ sudo mvn -v
sudo: mvn: command not found
我认为,使用“sudo mvn -v”,对于 root (#),一切都必须相同。但在这种情况下,root 可以执行,但属于 sudo 成员的普通用户无法使用带有 sudo 的 mvn。问题是什么?
答案1
当您sudo mvn -v
直接从用户帐户运行时,系统找不到 mvn 命令,因为 mvn 可执行目录不包含在用户的 PATH 中。
您可以添加 /root/.bashrc 的完整路径来解决这个问题。
像这样
export PATH=$PATH:/opt/idea-IU-231.8109.175/plugins/maven/lib/maven3/bin