Maven的使用(Leo)

Maven

Maven构建生命周期的核心阶段

image-20250727161423657

  • clean:清理项目编译、打包生成的输出文件(如 target 目录 )
  • validate:校验项目必要信息、依赖是否完整
  • compile:编译项目主代码(一般是 src/main/java 里的 Java 文件 )
  • test:执行单元测试(src/test/java 里的测试代码 )
  • package:将编译后的代码打包(如打成 JAR、WAR 包 )
  • verify:校验打包后的产物,确保符合质量标准
  • install:把打包好的产物安装到本地 Maven 仓库,供本地其他项目依赖
  • site:生成项目站点文档(展示项目报告、说明等 )
  • deploy:将最终产物部署到远程仓库(如公司私服 ),供团队其他成员使用

依赖管理

依赖传递冲突问题:

路径优先:当依赖中出现相同的资源时,层级越深,优先级越低,层级越浅,优先级越高

声明优先:当资源在相同层级被依赖时,配置顺序靠前的覆盖配置顺序靠后的

特殊优先:当同级配置了相同资源的不同版本,后配置的覆盖先配置的

依赖范围

依赖的jar包默认情况下可以在任何地方使用,可以通过scope标签设定其作用范围

作用范围:

  • ​ 主程序范围有效(main文件范围内)
  • ​ 测试程序范围有效(test文件范围内)
  • ​ 是否参与打包(package指令范围内)

image-20250727175916577

Jar和War包

JAR(Java Archive)和 WAR(Web Application Archive)是 Java 平台下两种常见的打包格式,主要区别如下:

用途与内容

  • JAR 包:用于封装 Java 类、资源文件(如配置文件、图片等)和元数据,通常用于打包独立的 Java 应用程序、类库或工具类,可通过java -jar命令直接运行(需在清单文件中指定主类)。
  • WAR 包:专为 Web 应用设计,包含 Web 应用的所有资源,如 Servlet、JSP、HTML、CSS、JavaScript、Java 类、配置文件(web.xml 等)以及依赖的 JAR 包,需部署到 Web 服务器(如 Tomcat、Jetty)中运行。

私服

仓库分类

image-20250806214310008

访问私服

image-20250806214154722

posted @ 2025-10-23 09:27  Leo0OO  阅读(4)  评论(0)    收藏  举报