Maven介绍

  • Maven是项目管理工具,对软件项目提供构建与依赖管理
  • Mavan是Apache下的Java开源项目
  • Mavan为Java项目提供了统一的管理方式,已成为业界标准

Maven核心特性

  • 项目设置遵循统一的规则,保证不同开发环境的兼容性
  • 强大的依赖管理,项目依赖组件自动下载、自动更新
  • 可扩展的插件机制,使用简单,功能丰富

Maven的安装与配置

下载Maven

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

设置环境变量

Eclipse与Maven整合

Maven项目标准结构

Maven的坐标

  • GroupId:机构或者团体的英文,采用“逆向域名”形式书写
  • ArtifactId:项目名称,说明其用途,例如:cms、oa...
  • Version:版本号,一般采用“版本+单词”形式,例如:1.0.0.RELEASE

项目标准结构

Maven依赖管理

  • Maven利用dependency(依赖)自动下载、管理第三方Jar
  • 在pom.xml文件中配置项目依赖的第三方组件
  • maven自动将依赖从远程仓库下载至本地仓库,并在工程中引用
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
</dependencies>

Maven中央仓库检索:https://search.maven.org/

拼音库

通过阿里云私服下载

阿里云仓库地址:https://maven.aliyun.com/mvn/view

找到public中的path:https://maven.aliyun.com/repository/public

配置pom.xml文件:

<repositories>
<repository>
<!-- 创建私服的地址 -->
<id>aliyun</id>
<name>aliyun</name>
<url>https://maven.aliyun.com/repository/public</url>
</repository>
</repositories>

项目打包

  • Maven可将Java项目打包为jar、war包
  • Maven项目打包是通过Plugins(插件)技术实现
  • Maven输出Jar包插件:maven-assembly-plugin

配置pom.xml文件:

<build>
<!-- 配置插件 -->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.5</version>
<configuration>
<archive>
<manifest>
<!-- 入口类 -->
<mainClass>com.imooc.maven.PinyinTestor</mainClass>
</manifest>
</archive>
<descriptorRefs>
<!-- all in one, 在打包时会将所有引用的jar合并到输出的jar文件中 -->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>

assembly插件运行

Run Configurations => Maven Build => New Configuration

最新文章

  1. 现代3D图形编程学习-环境设置
  2. DDD心得
  3. hdu3247Resource Archiver(ac自动机+spfa)
  4. [转]ionic项目之上传下载数据
  5. DIV相关的操作总结
  6. Ms sql server sql优化技巧
  7. ASPNET中实现在线用户检测(使用后台守护线程)
  8. Python学习入门教程,字符串函数扩充详解
  9. query 防止ajax重复提交
  10. C语言常见错误中英文对照表
  11. linux下建ftp用户,并限制用户访问路径[转]
  12. Android视频录制从不入门到入门系列教程(一)————简介
  13. Java(15) 多态
  14. css 初始化样式
  15. 1-Two Sum @LeetCode
  16. springBoot(7)---整合Mybaties增删改查
  17. Java 清理和垃圾回收
  18. IntelliJ IDEA 2017版 编译器使用学习笔记(九)(图文详尽版);IDE使用的有趣的插件;IDE代码统计器;Mybatis插件
  19. [转载]redis持久化的两种操作RDB和AOF
  20. hbase集群中其中某个regionserver 没有启动

热门文章

  1. 简而意赅 HTTP HTTPS SSL TLS 之间有什么不同
  2. python scapy的使用总结
  3. 史上最全的linuxvi命令的总结
  4. Django 05
  5. 【重温基础】16.JSON对象介绍
  6. 轻松构建基于 Serverless 架构的弹性高可用音视频处理系统
  7. rails 构建 API
  8. 【docker】使用学习
  9. windows系统下sublime text3开发工具前端配置
  10. 建议2:注意Javascript数据类型的特殊性---(1)防止浮点数溢出