maven 的安装与配置(Command ‘mvn‘ not found)修改配置文件后新终端依旧无法识别到 mvn 命令

下载 maven 安装包

复制代码
wget https://dlcdn.apache.org/maven/maven-3/3.9.4/binaries/apache-maven-3.9.4-bin.tar.gz

解压 apache-maven-3.9.4-bin.tar.gz

复制代码
tar -zxvf apache-maven-3.9.4-bin.tar.gz

找到文件解压到的位置,由于解压时我们没有指定路径,因此默认解压到当前路径下

可以看到路径为:/root/apache-maven-3.9.4

(看你自己把文件压缩包下载到哪里,在哪里进行解压的)

修改配置文件 /etc/profile

复制代码
vim /etc/profile

在配置文件中加上:

复制代码
export MAVEN_HOME=/root/apache-maven-3.9.4 # 你自己文件解压后所在的位置
export PATH=$MAVEN_HOME/bin:$PATH

wq 保存退出后,刷新配置文件,以确保修改生效

复制代码
source /etc/profile

检测是否安装成功

查看 maven 版本

复制代码
mvn -version

但是这里存在一个问题,当我们重启一个终端时,发现 mvn 命令依旧无法识别

尝试将 apache-maven-3.9.4 文件夹整体移动到 /usr/local 目录下

在 root 目录下,执行如下命令:

复制代码
mv apache-maven-3.9.4 /usr/local/

之后再次修改文件路径

重新刷新,但是依旧只能在执行 source /etc/profile 后才能检测到 mvn 命令

看网上说 /etc/profile 和 ~/.profile 文件是在 login 时才会读取

因此我尝试切换用户以及重启客户机,但是以上问题依旧没有得到解决

在终端输入 bash,会进入一个新 shell ,但这和我们打开一个新的终端是不一样的

经过测试发现前者是可以识别到 mvn 命令的,如下图:

总的来说这个问题还是没有得到根本的解决,有遇到类似问题的师傅可以评论区交流一下

相关推荐
凡人叶枫34 分钟前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
极客先躯40 分钟前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷
NE_STOP1 小时前
Raft算法处理细节
java
努力攻坚操作系统1 小时前
编程语言编译运行机制对比:C / Java / Python
java·c语言·python
慧一居士1 小时前
对比两个文件内容是否完全一致,java实现示例
java
再写一行代码就下班1 小时前
Cursor配置Java环境、创建Spring Boot项目的步骤
java·开发语言·spring boot
摇滚侠1 小时前
Java 零基础全套教程,类的加载过程与类加载器的理解,笔记 189
java·后端·intellij-idea
kong@react2 小时前
Rocky Linux 10.2 全面解析:企业级 CentOS 替代方案及保姆级docker安装
java·linux·运维·docker
未若君雅裁2 小时前
JVM 运行时数据区:程序计数器、堆、虚拟机栈与栈帧
java·jvm
凡人叶枫2 小时前
Effective C++ 条款10:令 operator= 返回一个 reference to *this
java·linux·服务器·开发语言·c++·effective c++