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范围的依赖复制到指定目录。
相关推荐
码农颜21 小时前
5.4.1 锁分类
java·数据库·mysql
linux-hzh1 天前
百日算法修炼 · Day 03
java·算法
不负岁月无痕1 天前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
mister_guo1 天前
Java线程池参数应该如何设置(ThreadPoolExecutor)
java
余额瞒着我当琳1 天前
C++模板初阶与STL初探
android·java·c++
淡海水1 天前
15-02-YooAsset面试篇-Unity架构设计与源码
java·unity·面试·c#·游戏引擎·yooasset
qq_448011161 天前
C语言中的指针函数和函数指针
java·c语言·开发语言
weixin_BYSJ19871 天前
springboot酒店管理系统--附源码27436
java·spring boot·python·随机森林·贪心算法·eclipse·django
2401_894915531 天前
GEO 源码部署如何实现精准地域分发?核心配置参数深度讲解
java·运维·服务器·后端·开源
evans在进步1 天前
LeetCode 2 两数相加:链表模拟加法,Java 图解进位过程
java·leetcode·链表