Linux系统安装配置Apache Maven 加速项目构建换源教程【教程】
欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《Linux系统安装配置Apache Maven 加速项目构建换源教程【教程】》,这篇文章主要讲到等等知识,如果你对文章相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!
Linux装Maven失败主因是环境变量或镜像配置错误;mvn compile超时因未换阿里云等HTTPS镜像源;需先确认JDK已安装且JAVA_HOME正确,再手动解压安装并配置MAVEN_HOME与PATH,最后修改settings.xml启用阿里云镜像。

Maven 在 Linux 上装不起来,八成卡在环境变量或镜像配置上;装起来了但 mvn compile 拉依赖超时,基本是没换源或用了已失效的 HTTP 镜像。
确认 Java 已就位再碰 Maven
没有可用的 JDK,mvn 命令会直接报错 JAVA_HOME not set 或静默失败。Maven 3.9+ 要求 JDK 8+(推荐 JDK 11/17),但不会自动校验兼容性。
- 运行
java -version,输出必须含版本号(如17.0.10)和 vendor(如Eclipse Adoptium) - 若无输出,先装 JDK:Ubuntu/Debian 用
sudo apt install openjdk-17-jdk;CentOS/RHEL 用sudo yum install java-17-openjdk-devel - 确保
JAVA_HOME已设且指向 JDK 根目录(不是jre子目录),例如/usr/lib/jvm/java-17-openjdk-amd64
手动安装 Maven 并让 mvn 全局可用
Linux 发行版仓库里的 Maven 版本普遍滞后(如 Ubuntu 22.04 自带 3.6.3),而新项目常依赖 3.8.6+ 的插件行为。手动解压 + 环境变量是最可控的方式。
- 下载最新稳定版(如 3.9.6):
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz - 解压到系统级路径:
sudo tar -xzf apache-maven-3.9.6-bin.tar.gz -C /opt/ - 建软链接方便后续升级:
sudo ln -sf /opt/apache-maven-3.9.6 /opt/maven - 写入系统级环境变量:
echo 'export MAVEN_HOME=/opt/maven' | sudo tee /etc/profile.d/maven.sh && echo 'export PATH=$MAVEN_HOME/bin:$PATH' | sudo tee -a /etc/profile.d/maven.sh - 立即生效:
source /etc/profile.d/maven.sh
执行 mvn -v,输出中 Maven home 应为 /opt/maven,且 Java version 行不为空。
换阿里云镜像源避免 Connection timed out
默认中央仓库 https://repo.maven.apache.org/maven2/ 国内直连极不稳定,常见错误包括 Failed to transfer、Could not find artifact,本质是 DNS 解析慢或连接被重置。
- 编辑全局配置:
sudo vi $MAVEN_HOME/conf/settings.xml - 在
标签内插入(注意:必须放在内部,不能在外面):
aliyunmaven * 阿里云公共仓库 https://maven.aliyun.com/repository/public
- 关键点:
表示覆盖所有仓库(包括 central、spring-plugins 等),比旧式* central更彻底;URL 必须用https(Maven 3.8.1+ 默认禁用 HTTP 镜像) - 改完保存,无需重启,下次
mvn clean compile就会走新源
本地仓库路径与权限别踩坑
默认本地仓库在 ~/.m2/repository,但多人共用服务器或磁盘空间紧张时,常需迁移到大容量盘(如 /data/maven_repo)。这里容易出两个问题:路径不存在、权限不足。
- 先创建目录并赋权:
sudo mkdir -p /data/maven_repo && sudo chown $USER:$USER /data/maven_repo - 在
$MAVEN_HOME/conf/settings.xml的根标签内添加:
/data/maven_repo
- 切勿用 root 运行
mvn初始化仓库——会导致/data/maven_repo下文件属主为 root,后续普通用户无法写入 - 验证方式:执行一次
mvn help:system,然后ls -l /data/maven_repo,确认子目录由当前用户拥有
镜像源和本地仓库这两处改完,mvn dependency:resolve 应能在 10 秒内完成基础依赖拉取;如果仍卡住,优先检查 settings.xml 是否有语法错误(如未闭合标签)、是否误加了空格导致 XML 解析失败。
好了,本文到此结束,带大家了解了《Linux系统安装配置Apache Maven 加速项目构建换源教程【教程】》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多文章知识!
windows激活码免费网站有哪些?合法免费Win激活码获取渠道说明
- 上一篇
- windows激活码免费网站有哪些?合法免费Win激活码获取渠道说明
- 下一篇
- WPS网页版在线入口 WPS官网电脑版登录地址
-
- 文章 · linux | 2星期前 |
- Linux下禁用su切换用户设置方法
- 187浏览 收藏
-
- 文章 · linux | 2星期前 |
- Linux下解压ZIP文件的几种方法
- 288浏览 收藏
-
- 文章 · linux | 2星期前 |
- Linux修改文件所有者教程
- 250浏览 收藏
-
- 文章 · linux | 2星期前 |
- Linux搭建网站服务器详细教程
- 280浏览 收藏
-
- 文章 · linux | 2星期前 |
- Linux容器安全配置全攻略
- 122浏览 收藏
-
- 文章 · linux | 2星期前 |
- Linux下安装Wine运行Windows软件方法
- 497浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- Red Skill
- 小红书创作服务平台为小红书创作者和机构提供视频上传、数据分析、粉丝管理、创作指导等多项运营服务,助力用户解锁更多创作者专属功能,体验高效创作!
- 14次使用
-
- MiMo Code
- MiMo Code 是小米大模型团队开源的新一代 AI 编程助手,面向开发者提供代码理解、生成与辅助开发能力,适合作为 AI 编程工具收藏和体验。
- 104次使用
-
- TRAE Work
- TRAE AI IDE | 国内首款 AI 原生集成开发环境,深度集成 Doubao-1.5-pro 与 DeepSeek 模型,支持中文自然语言一键生成完整代码框架,实时预览前端效果并智能修复 BUG。首创 Builder 模式实现需求到代码的自动化开发,兼容 Windows/macOS 系统,官网下载即用。
- 130次使用
-
- MeloLab
- MeloLab 是一款 AI 音乐生成工具,可根据文本创意生成歌曲、人声、混音、分轨和背景音乐,适合创作者快速制作音乐素材。
- 113次使用
-
- ChatExcel酷表
- ChatExcel酷表是由北京大学团队打造的Excel聊天机器人,用自然语言操控表格,简化数据处理,告别繁琐操作,提升工作效率!适用于学生、上班族及政府人员。
- 8769次使用
-
- 命令行工具:应对Linux服务器安全挑战的利器
- 2023-10-04 501浏览
-
- 如何使用Docker进行容器的水平伸缩和负载均衡
- 2023-11-07 501浏览
-
- linux .profile的作用是什么
- 2024-04-07 501浏览
-
- 如何解决s权限位引发postfix及crontab异常
- 2024-11-21 501浏览
-
- 如何通过脚本自动化Linux上的K8S安装
- 2025-02-17 501浏览

