• 在POM 4中,dependency 中还引入了 scope,它主要管理依赖的部署。目前 scope 可以使用5个值:

    compile,缺省值,适用于所有阶段,会随着项目一起发布。

    provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。

    runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。

    test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。

    system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。

  • mvn spring-boot:run,可以直接使用tomcat(默认)启动项目。

Maven 3支持Maven项目的多模块(multi-modules)结构。这样的Maven项目也被称为聚合项目,通常由一个父模块和若干个子模块构成。

其中,父模块打包类型必须是pom,同时以 modules 给出所有的子模块。父模块的POM示例如下:

  1. ...
  2. <packaging>pom</packaging>
  3. <modules>
  4. <module>my-frontend-project</module>
  5. <module>my-service-project</module>
  6. <module>my-backend-project</module>
  7. </modules>
  8. ...

其中的每个module,都是另外一个Maven项目。

  • eclipse创建maven项目部署到tomcat,图示教程:http://blog.csdn.net/clj198606061111/article/details/20221133

  • 使用 archetype(原型) 创建 maven 项目,Artifact Id为 maven-arrchetype-webapp 的类型,就是maven的web项目。

  • maven 项目属性设置对话框, Artifact Id 将作为项目名称显示。

  • maven 默认的本地库的路径是 ${user}/.m2/repository/,maven从远程库下载的jar包默认都会放到此目录下。

  • 当Maven运行过程中的各种配置,例如pom.xml,不想绑定到一个固定的project或者要分配给用户时,我们使用settings.xml中的settings元素来确定这些配置。这包含了本地仓库位置,远程仓库服务器以及认证信息等。

    settings.xml存在于两个地方:

    1.安装的地方:$M2_HOME/conf/settings.xml

    2.用户的目录:${user.home}/.m2/settings.xml

    前者又被叫做全局配置,后者被称为用户配置。如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml优先。

maven 项目的目录结构如下图:

在Maven项目或者pom.xml上右击,再选择Run As,就能看到常见Maven命令。

默认选项中没有我们想要执行的Maven命令怎么办?比如,默认带有mvn test,但我们想执行mvn clean test,很简单,选择Maven buid… 以自定义Maven运行命令,在弹出对话框中的Goals一项中输入我们想要执行的命令,如clean test,设置一下Name,点击Run即可。

并且,下一次我们选择Maven build,或者使用快捷键Alt + Shift + X, M快速执行Maven构建的时候,上次的配置直接就能在历史记录中找到。

eclipse实际上是在使用maven-archetype-plugin插件创建项目,因此与使用archetype创建项目骨架类似

常用maven命令

  • clean:清除目标目录中的生成结果。
  • generate-sources:开发环境与代码分离,很少使用,执行这个命令可以通过查看.classpath和.project两个文件来查看变化。
  • install:在本地库中安装jar
  • test:运行项目中的单元测试
  • package:根据项目生成jar文件
  • tomcat*:run:启动tomcat,前提是在项目的pom.xml文件中添加了tomcat插件
  • eclipse:eclipse:生成Eclipse项目文件,即.classpath和.project文件
  • compile:编译源代码
  • dependency:sources:下载项目依赖的jar包的源码包

Mac系统下配置Maven环境变量:

1、在官网下载Maven安装包,网址:https://maven.apache.org/download.cgi;

2、进入终端Terminal,验证JDK是否配置成功,输入java -version,显示JDK版本信息则配置成功;

3、打开配置文件.bash_profile,输入open .bash_profile;

4、输入Maven安装包路径:

  1. export M2_HOME=/Library/apache-maven-3.5.0
  2. export PATH=$PATH:$M2_HOME/bin

保存修改并关闭.bash_profile;

5、输入source .bash_profile使修改生效;

6、输入mvn -v验证Maven是否配置成功,如果显示Maven版本信息则配置成功。

maven常用命令:



注意:运行maven命令的时候,首先需要定位到maven项目的目录,也就是项目的pom.xml文件所在的目录。否则,必以通过参数来指定项目的目录。

使用阿里maven云仓库,加快下载速度。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  5. <mirrors>
  6. <!-- 阿里云仓库 -->
  7. <mirror>
  8. <id>alimaven</id>
  9. <mirrorOf>central</mirrorOf>
  10. <name>aliyun maven</name>
  11. <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
  12. </mirror>
  13. <!-- 中央仓库1 -->
  14. <mirror>
  15. <id>repo1</id>
  16. <mirrorOf>central</mirrorOf>
  17. <name>Human Readable Name for this Mirror.</name>
  18. <url>http://repo1.maven.org/maven2/</url>
  19. </mirror>
  20. <!-- 中央仓库2 -->
  21. <mirror>
  22. <id>repo2</id>
  23. <mirrorOf>central</mirrorOf>
  24. <name>Human Readable Name for this Mirror.</name>
  25. <url>http://repo2.maven.org/maven2/</url>
  26. </mirror>
  27. </mirrors>
  28. </settings>

maven 知识点1的更多相关文章

  1. Maven知识点积累二

    ①maven常用命令: mvn clean:清除target下编译生成的class文件 mvn compile:编译 mvn package:打包放到target下 mvn install:打包并放到 ...

  2. Maven知识点积累一

    配置maven变量,变量名可以是:MAVEN_HOME 或 M2_HOME settings.xml配置本地仓库地址: <localRepository>G:/.m2/repository ...

  3. Maven知识点整理

    1. 基础:maven 概念及生命周期 ===>Nexus创建本地Maven仓库(Maven私服) https://www.cnblogs.com/zishengY/p/7794923.html ...

  4. maven 知识点2

    maven 命令: table th:first-of-type { width: 500px; } table th:nth-of-type(2) { } 命令 含义 mvn help:effect ...

  5. Maven知识点简要

      1.依赖管理 <dependencies> <dependency> <groupId>net.sf.json-lib</groupId> < ...

  6. Maven知识点一览

    Maven 介绍和搭建 介绍 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告,和文档的软件项目管理工具. 环境搭建 网址:https://maven.apache ...

  7. Maven 知识点总结以及解决jar报冲突的几种方法

    1.常见的命令 Compile Test Package Install Deploy Clean 2.坐标的书写规范 groupId 公司或组织域名的倒序 artifactId 项目名或模块名 ve ...

  8. 各数据库连接配置与maven依赖安装

    maven用的比较多,所以自己去捣鼓了一下:以下是关于数据库配置的一块,把相关的内容张贴出来,以备不时之需 //MySql 配置文件(maven):pom.xml <dependency> ...

  9. maven杂碎汇总

        本来是想写一篇关于maven知识点的详细总结的,但需要看一本书或教材,然后再汇总一下,这样做自然是好的,这个在年前争取做完.本文是主要记录在工作和学习遇到关于maven的一些困惑.很乐意看到它 ...

随机推荐

  1. zzuli 1875多线DP

    1875: 蛤玮的财宝 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 530  Solved: 116 SubmitStatusWeb Board De ...

  2. 最小生成树 - 普里姆 - 边稠密 - O(N ^ 2)

    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> #define N 1005 #def ...

  3. jconsole工具使用----jvm内存泄漏问题

    转载地址:https://www.cnblogs.com/baihuitestsoftware/articles/6405580.html Jconsole,Java Monitoring and M ...

  4. office每次打开都要重新配置

    office每次打开都要重新配置     1● 找到路径 C:\Program Files\Common Files\microsoft shared\OFFICE14\Office Setup Co ...

  5. 小程序中的bindtap和catchtap的区别(交流QQ群:604788754)

    bindtap绑定的节点,如果他的父节点也有绑定事件,点击之后就会出现冒泡. catchtap绑定的节点,如果他的父节点也有绑定事件,点击之后不会出现冒泡.

  6. PHP:php中的双引号和单引号的区别

    双引号: $a="369"; $b="$a"; echo $b;//输出:369 单引号: $a="369"; $b='$a'; echo ...

  7. linux abstract model of virtual memory

  8. Oracle11g 表空间使用监控

    SELECT * FROM (select * from (select a.TABLESPACE_NAME TABLESPACE_NAME,(a.total || 'M') AS "SUM ...

  9. main方法原来只要放在public static类中就能跑,涨知识了

    接口中可以装在嵌套类对象. public interface ClassInterface { void howdy(); class Test implements ClassInterface { ...

  10. Spring的DAO模块

    Spring的DAO模块提供了对JDBC.Hibernate.JDO等DAO层支持. DAO模块依赖 commons-pool.jar.commons-collections.jar package ...