Maven源码阅读(一)

获取源码

apache maven官网地址:https://maven.apache.org/

不用点击,页面往下滚动,你会看到

找到源码地址,最终都是github:https://github.com/apache/maven

被墙了,可以用gitcode:https://gitcode.net/mirrors/apache/maven

也可以把github上的导入到gitee,我的仓库

克隆到本地,用idea打开

配置环境

没错,maven源码编译也需要maven仓库

配置之后,拉取源码的对应分支。

当前maven已经到maven-4.0.0-alpha-7版本,这里拉取maven-3.9.1版本

然后跳过测试,清理(clean)编译(compile)

预备知识

从mvn命令行看起,所以得会点脚本知识

先找个博客:https://blog.csdn.net/feinifi/article/details/127930417看看

再写几个demo大致明白一点点语法,回来看maven

开始看脚本

连蒙带猜到这一行

bat 复制代码
"%JAVACMD%" ^
  %JVM_CONFIG_MAVEN_PROPS% ^
  %MAVEN_OPTS% ^
  %MAVEN_DEBUG_OPTS% ^
  -classpath %CLASSWORLDS_JAR% ^
  "-Dclassworlds.conf=%MAVEN_HOME%\bin\m2.conf" ^
  "-Dmaven.home=%MAVEN_HOME%" ^
  "-Dlibrary.jansi.path=%MAVEN_HOME%\lib\jansi-native" ^
  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
  %CLASSWORLDS_LAUNCHER% %MAVEN_ARGS% %MAVEN_CMD_LINE_ARGS%
if ERRORLEVEL 1 goto error
goto end

大致一丝,就是设置类路径,设置maven.home,设置寻找java.home,以及指定m2.conf配置文件

相关推荐
NE_STOP11 小时前
MyBatis-配置文件解读及MyBatis为何不用编写Mapper接口的实现类
java
后端AI实验室16 小时前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai
程序员清风18 小时前
小红书二面:Spring Boot的单例模式是如何实现的?
java·后端·面试
belhomme18 小时前
(面试题)Redis实现 IP 维度滑动窗口限流实践
java·面试
Be_Better18 小时前
学会与虚拟机对话---ASM
java
开源之眼20 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
Maori31621 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
用户908324602731 天前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋1 天前
DecimalFormat 与 BigDecimal
java·后端
beata1 天前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端