maven

本文详细介绍Maven的安装、核心功能、目录结构、配置文件、常用命令及IDEA集成技巧,涵盖依赖管理、一键构建、项目目录结构解析等内容,助力开发者高效掌握Maven应用。

1. maven安装

  1. 下载
    http://maven.apache.org/download.cgi
  2. 安装
    解压后配置环境变量,MAVEN_HOME:安装地址,path:%MAVEN_HOME/bin%
  3. 测试
    cmd窗口执行mvn -v
    出现版本号等信息即可

2. maven的两大核心功能

  1. 依赖管理
    本地仓库 — 私服 — 中央仓库
    所有jar包都在中央仓库中,本地仓库可向私服或中央仓库获取,私服也可以先中央仓库获取,也可以接收本地仓库上传。
  2. 一键构建
    提供编译、测试、打包、安装等一系列命令

3. maven的目录结构

  1. bin
    该目录包含了 mvn 运行的脚本,这些脚本用来配置 Java 命令,准备好 classpath 和相关的 Java 系统属性,然后执行 Java 命令。
  2. boot
    该目录只包含一个文件,以 maven 3.3.9 为例,该文件为 plexus-classworlds-2.5.2.jar。plexus-classworlds 是一个类加载器框架
  3. conf
    该目录包含了一个非常重要的文件 settings.xml。直接修改该文件,就能在机器上全局地定制 Maven 的行为。
  4. lib
    该目录包含了所有 Maven 运行时需要的 Java 类库,Maven 本身是分模块开发的,因此用户能看到诸如 maven-core-3.0.jar、maven-model-3.0.jar 之类的文件。

4. maven配置文件

  1. 配置指定本地仓库
    <localRepository>D:\developmentTool\maven\repository</localRepository>
  2. 配置阿里镜像
<mirrors>
    <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->
	 <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror> 
  </mirrors>

5. maven常用的命令

(1)maven clean。

对项目进行清理,清理的过程中会删除删除target目录下编译的内容。

(2)maven compile。

编译项目源代码。

(3)maven test。

对项目的运行测试。

(4)maven packet。

可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。

(4)maven install。

在本地仓库生成仓库的安装包可以供其他项目引用,同时打包后的文件存放到项目的 target 目录下。
对项目打包有三种打包方式,pom打包,jar包和war包。打包方式在pom.xml文件中进行指定。
pom工程一般是聚合工程,代表父工程,负责管理jar包的版本、maven插件的版本等,主要做统一的依赖管理。
jar包就是普通的打包方式,可以是pom工程的子工程。
war包的都是web工程,是可以直接放到tomcat下运行的工程。
打成pom包和jar包的工程在新建的时候可以不需要制定maven项目的原型,达成war包的项目需要制定maven项目原型,指定的原型通常为maven-archetype-webapp,代表web项目。
其中最常用的就是maven clean和maven install。

6. idea集成maven

打开idea后在设置中搜索mave
配置:
maven home directory:maven安装目录
User settings file:maven配置文件
Local repository:本地仓库位置
配置不联网下使用骨架创建项目
速度更快
点击Runner
勾选Run in background
在VM Options中填写-DarchetypeCatalog=internal

7. maven项目目录结构

src下面
main 存放java、resources、webapp目录
test 存放测试java、resources

pom.xml文件

8. idea创建maven项目

新建project或者module
选择maven,使用骨架和不适用骨架两种方式创建
创建时需要指定的内容
groupId:公司或组织名称
artifactId:项目名称
version:版本号
这也是坐标指定
注意:idea创建的maven目录结构可能不全,需要手动补全。

9. servlet包和jsp包冲突

jar包冲突问题,
tomcat中已经有了servlet和jsp包,我们写代码的时候导入了这两个包,所以运行的时候会发生冲突。
报错:Java类型转化异常,myServlet无法转化为servlet
解决:设置我们导入的两个包的作用域,仅限于编译阶段。
做法:

<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope><!--这里-->

10. 自己指定tomcat插件

<plugin>
 <groupId>org.apache.tomcat.maven</groupId>
 <artifactId>tomcat7-maven-plugin</artifactId>
 <version>2.1</version>
 <configuration>
   <port>9090</port>
   <path>/mgr</path>
   <uriEncoding>UTF-8</uriEncoding>
   <server>tomcat7</server>
 </configuration>
</plugin>

11. idea定义模板

File->setting->搜素Live Templates
点击+号,选择2.Templates group…
分组名称填写custom(该名字自定义)
选择custom,点击+号选择1.Live Templates
Abbreviation填写tomcat7
Temperate text填写tomcat7插件的模板
Define选择xml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值