Maven Day1

什么是Maven

1.Maven是一款服务于java平台的自动化构建工具

make->Ant->Maven->Gradle

2.传统工程我们直按把jar包放置在项目中  Maven工程真正的jar包放置在仓库中 项目中只用放置jar包的坐标。不使用Maven工具 当做 Java 项目需要第三方依赖包时 将别人打好的 Jar 包下载到本地 然后手动指定给项目 

3.而用了 Maven 之后 需要什么包 直接在 pom.xml 中添加几行 xml 代码(添加所依赖jar包的坐标)指定包名 版本等 就可以了 方便开发

Maven 有哪些优点和缺点

优点如下:

  1. 简化了项目依赖管理
  2. 易于上手 对于新手可能一个"mvn clean package"命令就可能满足他的工作
  3. 便于与持续集成工具(jenkins)整合
  4. 便于项目升级 无论是项目本身升级还是项目使用的依赖升级
  5. 有助于多模块项目的开发 一个模块开发好后,发布到仓库 依赖该模块时可以直接从仓库更新  而不用自己去编译
  6. maven有很多插件 便于功能扩展 比如生产站点 自动发布版本等

缺点如下:

  1. maven是一个庞大的构建系统 学习难度大
  2. maven采用约定优于配置的策略(convention over configuration) 虽然上手容易 但是一旦出了问题 难于调试
  3. 当依赖很多时,m2eclipse 老是搞得Eclipse很卡
  4. 中国的网络环境差 很多repository无法访问 比如google code  jboss 仓库无法访问

Maven常见的依赖范围有哪些?

  1. compile:编译依赖 默认的依赖方式在编译(编译项目和编译测试用例) 运行测试用例,运行(项目实际运行)三个阶段都有效 典型地有spring-core等jar。
  2. test:测试依赖 只在编译测试用例和运行测试用例有效 典型地有JUnit。
  3. provided:对于编译和测试有效 不会打包进发布包中 典型的例子为servlet-api,一般的web工程运行时都使用容器的servlet-api。
  4. runtime:只在运行测试用例和实际运行时有效 典型地是jdbc驱动jar包。
  5. system: 不从maven仓库获取该jar,而是通过systemPath指定该jar的路径。
  6. import: 用于一个dependencyManagement对另一个dependencyManagement的继承。

安装maven

 1.当前系统是否配置JAVA_HOME的环境变量

2. 下载maven,解压maven放在一个非中文无空格的路径下

3.配置maven的相关环境变量

  • 在环境变量增加M2_HOME,路径是maven解压后的根目录

  • 在环境变量里的path中增加maven/bin的目录

4. 验证:maven -v 查看maven版本

07ae1c8740a59c625f8407d0315aa2d4.png

常用maven命令

  • mvn clean:清理

  • mvn compile:编译主程序

  • mvn test-compile:编译测试程序

  • mvn test:执行测试

  • mvn package:打包

  • mvn install

执行maven命令必须进入到pom.xml的目录中进行执行

321ad6635386cf5d4bb70e867d3333bc.png

进入到项目的pom.xml目录之后,就可以执行啦。

进入到项目的pom.xml目录之后,就可以执行啦。

1、运行 mvn compile

a0f96c63a8307ae71febd917a0b47e5b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值