Maven初步认识


Maven简介

Maven翻译过来是"专家","内⾏"的意思。 作为Apache组织中的⼀个颇为成功的开源项 ⽬,Maven主要服务于基于java平台的项⽬构建,依赖管理和项⽬信息管理。 ⽆论是⼩型的开源类库项⽬,还是⼤型的企业级应⽤; ⽆论是传统的瀑布式开发,还是流⾏的敏捷开发,Maven都能⼤显身⼿。

安装使用

  1. Maven下载解压后将bin目录添加到系统路径中
  2. maven 命令 运⾏maven命令的时候,⾸先需要定位到maven项⽬的⽬录,也就是项⽬的pom.xml⽂件所在的⽬ 录。否则,必以通过参数来指定项⽬的⽬录。 Maven的命令格式如下(命令代表的含义:执⾏ plugin-name 插件的 goal-name ⽬标):
mvn [plugin-name]:[goal-name]
命令 描述
mvn –version 显示版本信息
mvn clean 清理项⽬⽣产的临时⽂件,⼀般是模块下的target⽬录
mvn compile 编译源代码,⼀般编译模块下的src/main/java⽬录
mvn package 项⽬打包⼯具,会在模块下的target⽬录⽣成jar或war等⽂件
mvn test 测试命令,或执⾏src/test/java/下junit的测试⽤例.
mvn install 将打包的jar/war⽂件复制到你的本地仓库中,供其他模块使⽤
mvn deploy 将打包的⽂件发布到远程参考,提供其他⼈员进⾏下载依赖
mvn site ⽣成项⽬相关信息的⽹站
mvn eclipse:eclipse 将项⽬转化为Eclipse项⽬
mvn dependency:tree 打印出项⽬的整个依赖树
mvn archetype:generate 创建Maven的普通java项⽬
mvn tomcat7:run 在tomcat容器中运⾏web应⽤
mvn jetty:run 调⽤ Jetty 插件的 Run ⽬标在 Jetty Servlet 容器中启动 web 应⽤

配置conf/settings.xml

  1. settings.xml修改下载源为阿里云链接
<mirrors>
    <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>
</mirrors>

依赖管理

Maven是一个jar包管理的依赖管理系统,⽤groupId、artifactId、version组成的Coordination(坐标)唯⼀标识⼀个依赖。 1. groupId 定义当前Maven项⽬⾪属的实际项⽬-公司名称。(jar包所在仓库路径) 由于Maven中模块的概念,因此⼀个实际项⽬往往会被划分为很多模块。 ⽐如spring是⼀个实际项⽬,其对应的Maven模块会有很多,如spring-core,spring-webmvc等。 2. artifactId 该元素定义实际项⽬中的⼀个Maven模块-项⽬名, 推荐的做法是使⽤实际项⽬名称作为artifactId的前缀。 ⽐如: spring-bean, spring-webmvc等。 3. version 该元素定义Maven项⽬当前所处的版本。

示例:

<dependency>
 <groupId>javax.servlet</groupId> com.baidu
 <artifactId>javax.servlet-api</artifactId> ueditor echarts
 <version>3.1.0</version>
</dependency>