Maven 核心配置有哪些

Maven 核心配置

  1. 项目依赖管理

    • 依赖传播:自动将所有依赖节点加入到项目classpath。
    • 依赖优先原则:解决依赖冲突,优先选择最短路径的版本。
  2. 依赖特性

    • 可选依赖:通过<optional>true</optional>标记,表示依赖不是必须的。
    • 排除依赖:使用<exclusions>标签排除间接依赖。
  3. 依赖范围

    • compile:默认范围,编译和打包时都依赖。
    • provided:编译时依赖,打包时不包含。
    • runtime:运行时依赖,编译时不依赖,打包时包含。
    • test:仅用于测试,编译和运行测试用例时依赖,不打包。
    • system:依赖于系统路径中的jar,不包含在最终打包中。
  4. 手动加入本地仓库

    • 使用mvn install:install-file命令将本地jar包安装到Maven仓库。
  5. 项目聚合与继承

    • 聚合:通过父工程统一构建多个模块。
    • 继承:子工程继承父工程的配置,避免重复。
  6. 依赖管理

    • 在父工程中使用<dependencyManagement>声明依赖,子工程中引入。
  7. 项目属性

    • 使用<properties>配置属性参数,简化配置。
  8. 构建配置

    • 资源配置:定义资源文件的位置和过滤规则。
    • 构建资源:配置构建过程中的资源文件和目标路径。

Maven 常用属性

  • ${basedir}:项目根目录。
  • ${version}:项目版本。
  • ${project.build.directory}:构建目录,默认为target
  • ${project.build.sourceEncoding}:源码编码格式。
  • ${project.build.sourceDirectory}:源码路径。
  • ${project.build.finalName}:输出文件名称。
  • ${project.build.outputDirectory}:构建输出目录,默认为target/classes

Maven 插件使用示例

  • maven-dependency-plugin:用于将system范围的依赖复制到指定目录。
相关推荐
mghio3 小时前
Dubbo 中的集群容错
java·微服务·dubbo
咖啡教室8 小时前
java日常开发笔记和开发问题记录
java
咖啡教室8 小时前
java练习项目记录笔记
java
鱼樱前端9 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea9 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea9 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
李少兄11 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
此木|西贝11 小时前
【设计模式】原型模式
java·设计模式·原型模式
可乐加.糖11 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信