Maven学习笔记(一)

清单一:1.项目主代码一般情况放在src/main/java目录下,无须额外的配置,Maven会直接寻找目录找到项目主代码。

    2.Java类的包名应该与GroupId,artifactId名称保持一致,方便搜索构建或者Java类。

    3.代码编写完毕,利用Maven进行编译,在项目根目录下运行mvn clean complie。其中:

      clean:告诉Maven清理输出目录target/,也就是删除target/目录,默认Maven构建的所有输出都在target/中。

      resource:

      compiler:将项目主代码编译到target/classes目录下

    4.在执行完项目的清理和编译过程后,写单元测试代码并让Maven执行自动化测试

清单二:1.编写测试代码一般放在src/test/java目录下。

    2.单元测试标准是JUnit,在写测试类之前,需要为项目配置JUnit依赖。

    3.运行mvn clean test测试

清单三:1.打包mvn clean package进行打包,产生jar或者其他类型的包。

    2.如果其他项目有需要,有两种方式可以完成:

      (1)间接引用:将其复制到其他项目的classpath中

      (2)直接引用:执行mvn clean install,这样就将打包好的jar文件安装到本地仓库,其他maven项目就可以使用。

总结:从目前所知道的来看,Maven就是帮助将工程需要的所有jar包等从中央仓库或者本地仓库下载并编译成为class文件,用于支撑整个项目,好处是方便管理,而不用在需要各种jar包的时候到处查找下载配置。

时间: 2024-08-04 08:01:15

Maven学习笔记(一)的相关文章

Maven学习笔记之——仓库(中)

Maven学习笔记之--仓库(中) 1.    远程仓库的配置 当出现默认的中央仓库无法满足我们的需求或者连接不上的时候.我们可以通过POM文件来指定远程仓库. <repositories> <repository> <id>jboss-maven2-release-repository</id> <name>JBoss Repository</name> <url>http://repository.jboss.org/

Maven学习笔记

Maven学习笔记 Maven是项目管理工具 1. 安装Maven 在apache官网(http://maven.apache.org/download.cgi) 下载apache-maven-3.3.3-bin.zip和apache-maven-3.3.3-src.zip:解压,把bin的位置设在环境变量里, 新建环境变量名:MAVEN_HOME 值:C:\Users\pengtao.yue\apache-maven-3.3.3\bin 在path中加入:%MAVEN_HOME% 在DOS中输

Maven学习笔记之——仓库(上)

Maven学习笔记之--仓库(上) 1.    何为maven仓库 Maven可以在某一指定位置统一存放所有maven项目共享的构件.此指定位置就是maven仓库.实际的项目将不再自己存放其所依赖的构件.他们只需要声明这些依赖的坐标.在需要的时候就会自动根据坐标找到仓库中的构件.并使用他们. 仓库的意义:减少磁盘占用空间.去除大量重复的构件.尤其是项目越来越多.越来越大的时候.更便于统一管理所有控件. 2.    仓库的布局 任何一个构件都有其唯一的坐标.根据这个坐标可以定义其在仓库中的唯一存储

Maven学习笔记之——坐标和依赖(上)

Maven学习笔记之--坐标和依赖(上) 1.    Maven坐标概念 Maven通过构件的坐标来在Maven仓库中定位到具体的构件.Maven的坐标元素包括groupId.artifactId.versiion.packaging.classifier.Maven内置了一个中央仓库地址.需要时Maven会根据坐标到其中下载.具体关于中央仓库的介绍在后面. 2.    Maven坐标详解 比如下面一组坐标: <groupId>org.andy.items</groupId> &l

Maven学习笔记之——坐标和依赖(中)

Maven学习笔记之--坐标和依赖(中) 1.    传递性依赖 1.1    何为传递性依赖 项目中经常有引入一个jar包还要引入其他与其相关的jar包.自己搜的话要注意很多.比如版本问题等.而Maven会解析解析各个直接依赖的POM.将哪些必要的间接依赖以传递依赖的形式引入到项目中. 依赖范围不仅可以控制依赖与三种classpath关系.还对传递依赖产生影响. 假设A依赖B,B依赖C,我们说A对于B是第一直接依赖,B对于C是第二直接依赖,A对于C是传递性依赖.第一直接依赖的范围和第二直接依赖

Maven学习笔记之——坐标和依赖(下)

Maven学习笔记之--坐标和依赖(下) 1.    最佳实践 归纳Maven依赖使用的常用技巧.方便用来避免和处理很多常见问题. 1.1.     排除依赖 传递性依赖会给项目隐式地引入很多依赖,这极大地简化了项目依赖的管理.但是有些时候这种特性也会带来问题.例如,当前项目有一个第三方依赖,而这个第三方依赖由于某些原因依赖了另外一个类库的SNAPSHOT版本,那么这个SNAPSHOT就会成为当前项目的传递性依赖,而SNAPSHOT的不稳定性会直接影响到当前的项目.这时候需要排除掉该SNAPSH

Maven学习笔记(1)之安装Maven

此笔记是学习Maven时自己摸索+各种百度而来,并非全部原创,望与各位一同学习,勿拍~勿拍~ 安装步骤: 1.下载Maven的最新版本,地址:http://maven.apache.org/download.cgi 2.将下载完成的压缩包放至D盘根目录(图方便,一会儿安装完再删就好) 3.在命令行上操作,进入到你想要安装的目录路径后敲:jar xvf 的命令来进行解压安装(请勿手动解压以省略此步) 4.配置环境变量 新建系统变量  MAVEN_HOME  变量值:D:\Java\apache-m

Maven学习笔记-使用Eclipse插件创建Java Webapp项目

使用Java的猿们,最多接触的大概就是web项目了吧?在学习Maven的过程中,首先当然就是创建一个webapp项目. 自己在尝试的过程中,碰到了很多的问题.我把详细的过程都记录下来,用以今后参考. 步骤: 如果未搭建好Maven开发环境,请参考前一篇:Maven学习笔记--环境搭建 打开Eclipse, 菜单栏选择File -> new -> other,在弹出的对话框中找到Maven Project. 在弹出的新建Maven项目的对话框中,不要勾选第一项"Create a sim

Maven学习笔记(三):Maven的聚合和继承

Maven的聚合其实就是把各个项目拷贝到一个项目里,便于统一构建(这种是父子目录结构构件,个人喜欢这种,平行结构不喜欢),实现聚合的方式为: -- 新建一个普通的Maven项目,只保留pom文件,其他的目录结构都删除 -- 配置新建项目的pom文件: 1 <project ...> 2 <modelVersion>4.0.0</modelVersion> 3 <groupId>XXXX</groupId> 4 <artifactId>

Maven学习笔记之——三套生命周期

Maven学习笔记之--三套生命周期 Maven命令的输入往往就对应了生命周期.比如mvncompile就表示执行默认生命周期阶段compile.Maven的生命周期是抽象的.其实际行为都是由插件完成的.比如mvncompile就可能会由maven-compile-plugin完成.生命周期和插件是协同工作. 1.    何为生命周期 项目构件中进行的清理.编译.测试及部署都可以视作一个一个项目的生命周期.但是每个项目每个人都有不一样的顺序不一样的实现方式.没有统一性带来的不方便已经不言而喻.