转载来自:https://www.cnblogs.com/zjfjava/p/6817793.html  尊重原创!

(一)Maven 基本概念——根目录、项目创建、坐标

 
 1. MavenProjectRoot(项目根目录)
   |----src
   |     |----main
   |     |         |----java ——存放项目的.java文件
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |     |----test
   |     |         |----java ——存放所有测试.java文件,如JUnit测试类
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |----target ——项目输出位置
   |----pom.xml ----用于标识该项目是一个Maven项目

  pom.xml文件中的内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--所有的Maven项目都必须配置这四个配置项-->
<modelVersion>4.0.0</modelVersion>
<!--groupId指的是项目名的项目组,默认就是包名-->
<groupId>cn.zang.maven.hello</groupId>
<!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
<artifactId>hello-first</artifactId>
<!--version指的是版本,这里使用的是Maven的快照版本-->
<version>SNAPSHOT-0.0.1</version>
</project>
 
2.使用mvn archetype:create命令创建maven项目
cmd中确定项目路径并输入:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
效果如图:
aaarticlea/png;base64,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" alt="" />

可以看到,Maven帮我们创建的项目是一个标准的Maven项目,不过目前Maven只是帮我们生成了src/main/java(存放项目的源代码)和src/test/java(存放测试源代码)这两个目录,但实际项目开发中我们一般都会有配置文件,例如log4j.properties,所以我们还需要手动创建src/main/resources(存放项目开发中用到的配置文件,如存放log4j.properties等)和src/test/resources(存放测试时用到的配置文件),如下图所示:

  aaarticlea/png;base64,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" alt="" />

  然后我们就可以将创建好的myapp项目导入到Eclipse中进行开发了,如下图所示:

  aaarticlea/png;base64,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" alt="" />
 
3.pom.xml详解

1、pom意思就是project object model。

     2、pom.xml包含了项目构建的信息,包括项目的信息、项目的依赖等。

     3、pom.xml文件是可以继承的,大型项目中,子模块的pom.xml一般都会继承于父模块的pom.xml

  pom.xml文件的内容如下:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.mycompany.app</groupId>
<artifactId>myapp</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging> <name>myapp</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency> </dependencies> </project>

 pom.xml文件的节点元素说明:

    <project>       pom文件的顶级节点
    <modelVersion>     object model版本,对Maven2和Maven3来说,只能是4.0.0 
    <groupId>       项目创建组织的标识符,一般是域名的倒写
    <artifactId>      定义了项目在所属组织的标识符下的唯一标识,一个组织下可以有多个项目
    <version>        当前项目的版本,SNAPSHOT,表示是快照版本,在开发中

    <packaging>      打包的方式,有jar、war、ear等
    <name>        项目的名称
    <url>          项目的地址

    <properties>    属性配置,比如:<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <dependencies>     构建项目依赖的jar

  其中由groupId、artifactId和version唯一的确定了一个项目坐标
 
4.Maven编译-测试-打包-安装项目
mvn clean compile    mvn clean test    mvn clean package      mvn clean install
 
5.Maven创建项目的命令说明
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

  mvn archetype:generate                                         固定写法

  -DgroupId                       组织标识(包名)

  -DartifactId                       项目名称

  -DarchetypeArtifactId                    指定ArchetypeId,maven-archetype-quickstart,创建一个Java Project;maven-archetype-webapp,创建一个Web Project

  -DinteractiveMode                   是否使用交互模式

  archetype是mvn内置的一个插件,create任务可以创建一个java项目骨架,DgroupId是软件包的名称,DartifactId是项目名,DarchetypeArtifactId是可用的mvn项目骨架,目前可以使用的骨架有:

  • maven-archetype-archetype
  • maven-archetype-j2ee-simple
  • maven-archetype-mojo
  • maven-archetype-portlet
  • maven-archetype-profiles (currently under development)
  • maven-archetype-quickstart
  • maven-archetype-simple (currently under development)
  • maven-archetype-site
  • maven-archetype-site-simple
  • maven-archetype-webapp
  每一个骨架都会建相应的目录结构和一些通用文件,最常用的是maven-archetype-quickstartmaven-archetype-webapp骨架。maven-archetype-quickstart骨架是用来创建一个Java Project,而maven-archetype-webapp骨架则是用来创建一个JavaWeb Project。
 
6. Maven坐标主要组成
  • groupId:组织标识(包名)
  • artifactId:项目名称
  • version:项目的当前版本
  • packaging:项目的打包方式,最为常见的jar和war两种

样例:

  aaarticlea/png;base64,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" alt="" />

Maven坐标是通过groupId、artifactId、version、packaging、classfier这些元素来定义的,我们来看看示例:

我们在平时的开发中一般只需要使用必要的几个元素就好了,不必要的一些元素往往是用不着的,我们来看看每个元素所代表的含义,前面也是有简单的提到过的。

groupId :定义当前Maven项目隶属的实际项目。首先,Maven项目和实际项目不一定是一对一的关系。比如SpringFrameWork这一实际项目,其对应的Maven项目会有很多,如spring-core,spring-context等。这是由于Maven中模块的概念,因此,一个实际项目往往会被划分成很多模块。其次,groupId不应该对应项目隶属的组织或公司。原因很简单,一个组织下会有很多实际项目,如果groupId只定义到组织级别,而后面我们会看到,artifactId只能定义Maven项目(模块),那么实际项目这个层次将难以定义。最后,groupId的表示方式与Java包名的表达方式类似,通常与域名反向一一对应。上例中,groupId为junit,是不是感觉很特殊,这样也是可以的,因为全世界就这么个junit,它也没有很多分支。

artifactId : 该元素定义当前实际项目中的一个Maven项目(模块),推荐的做法是使用实际项目名称作为artifactId的前缀。比如上例中的junit,junit就是实际的项目名称,方便而且直观。在默认情况下,maven生成的构件,会以artifactId作为文件头,如junit-3.8.1.jar,使用实际项目名称作为前缀,就能方便的从本地仓库找到某个项目的构件。

version : 该元素定义了使用构件的版本,如上例中junit的版本是3.8.1,你也可以改为4.0表示使用4.0版本的junit。

packaging :定义Maven项目打包的方式,使用构件的什么包。首先,打包方式通常与所生成构件的文件扩展名对应,如上例中没有packaging,则默认为jar包,最终的文件名为junit-3.8.1.jar。也可以打包成war等。

classifier: 该元素用来帮助定义构建输出的一些附件。附属构件与主构件对应,如上例中的主构件为junit-3.8.1.jar,该项目可能还会通过一些插件生成如junit-3.8.1-javadoc.jar,junit-3.8.1-sources.jar, 这样附属构件也就拥有了自己唯一的坐标。

上述5个元素中,groupId、artifactId、version是必须定义的,packaging是可选的(默认为jar),而classfier是不能直接定义的,需要结合插件使用。

Maven为什么使用坐标?

  • Maven世界拥有大量构建,我们需要找一个用来唯一标识一个构建的统一规范。
  • 拥有了统一规范,就可以把查找工作交给机器。

借鉴自:http://www.cnblogs.com/xdp-gacl/tag/Maven%E5%AD%A6%E4%B9%A0%E6%80%BB%E7%BB%93/

整理自我的印象笔记(很早之前就有学过Maven,当时笔记都做在了印象笔记,本来准备按照自己的理解重新写一系列Maven博客,但依然转载是因为一方面作者的体系已经比较全面了,锦上添花的作用不大;另一方面自己对这方面知识已了解,重新写一系列博客对自己的时间和精力是很大的浪费。所以本博客主要内容取自以上网址,中间穿插了自己的一些完善和修改,时间问题代码就不重新敲了。)主要介绍Maven基本概念。

Maven基本概念——根目录、项目创建、坐标的更多相关文章

  1. (一)Maven 基本概念——根目录、项目创建、坐标

     1. MavenProjectRoot(项目根目录)   |----src   |     |----main   |     |         |----java ——存放项目的.java文件  ...

  2. Maven 基本概念——根目录、项目创建、坐标

     1. MavenProjectRoot(项目根目录)   |----src   |     |----main   |     |         |----java ——存放项目的.java文件  ...

  3. (三)创建基于maven的javaFX+springboot项目创建

    创建基于maven的javaFx+springboot项目有两种方式,第一种为通过非编码的方式来设计UI集成springboot:第二种为分离用户界面(UI)和后端逻辑集成springboot,其中用 ...

  4. maven project module 依赖项目创建 ---转

    一.创建Maven Project 1.右击 --> New --> Other,--> Maven --> Maven Project --> Next 2.如下图,选 ...

  5. Maven学习 五 Maven项目创建(1)jar项目

    第一步:Maven项目的创建 File->new->Maven project. 点击下一步 上方的两个多选框选上,第一个是不使用archetype 原型模板,第二个是使用默认工作空间 点 ...

  6. Maven进价:使用m2eclipse创建web项目

    1.新建Maven项目 2.设置项目空间 3.选择maven-archetype-webapp 4.填写Maven坐标 Maven坐标:groupId:artifactId:packaging:ver ...

  7. Maven入门,Maven项目的创建,nexus 2.x搭建私服以及Maven多模块项目创建

    maven的了解做一个总结,以便日后查阅, 若有不足之处,还望指出,学无止境 当然也能起到入门效果. 一,搭建maven私服 1.工具 a. Nexus 2.5.1-01 b. Maven 3.3.9 ...

  8. maven学习3,如何创建一个web项目

      Maven学习 (三) 使用m2eclipse创建web项目   1.首先确认你的eclipse已经安装好m2eclipse的环境,可以参照上两篇Maven学习内容 2.新建一个maven的项目 ...

  9. springmvc 项目完整示例09 maven项目创建

    需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...

随机推荐

  1. sersync+rsync做实时同步

    (1).实验环境 源主机:youxi1 192.168.5.101 目的主机:youxi2 192.168.5.102 目的:实时同步数据 sersync默认端口874,rsync默认端口873 (2 ...

  2. dbtreeview

    http://www.delphipages.com/comp/dynamic_dbtreeview-6302.html https://files.cnblogs.com/files/jijm123 ...

  3. nginx虚拟机无法访问解决

    .重要:修改配置文件使用虚拟机,否则怎么配置都不生效,添加如下用户 [root@host---- html]# ll /etc/nginx/nginx.conf -rw-r--r-- root roo ...

  4. Redfish技术介绍

    1.1  概述 Redfish是一种基于HTTPs服务的管理标准,利用RESTful接口实现设备管理.每个HTTPs操作都以UTF-8编码的JSON格式(JSON是一种key-value对的数据格式) ...

  5. Css3 权重

    Css权重 权重--很多规则应用到同一个元素上时,权重是决定哪个生效的(优先级) 权重等级与权值 行内样式(1000)>ID选择器(100)>类.属性选择器或伪类选择器(10)>元素 ...

  6. 常用CSS媒体查询

    @media screen and (orientation: portrait) { /*竖屏 css*/} @media screen and (orientation: landscape) { ...

  7. python遍历文件夹中所有文件夹和文件,os.walk

    python中可以用os.walk来遍历某个文件夹中所有文件夹和文件. 例1: import os filePath = 'C:/Users/admin/Desktop/img' for dirpat ...

  8. 【编程开发】CMake相关注意事项

    [编程开发]CMake相关注意事项 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ CMake是一个非常常用的跨平台移植的工具,CMake可用来生成不同平台下 ...

  9. 在图中寻找最短路径-----深度优先算法C++实现

    求从图中的任意一点(起点)到另一点(终点)的最短路径,最短距离: 图中有数字的点表示为图中的不同海拔的高地,不能通过:没有数字的点表示海拔为0,为平地可以通过: 这个是典型的求图中两点的最短路径:本例 ...

  10. 基于mxgraph.js开发的流程图组件

    1.fabric.js 在决定使用mxgraph.js开发流程图之前,尝试过用fabric.js来开发,结果发现并没有想象中的那么简单,而且用户体验非常差,下面是体验地址:workFlow直到遇到一个 ...