Maven配置

1、首先什么是ANT?

目前无论使用IDEA还是Eclipse等其他IDE,使用里面ANT工具。ANT工具可以帮助我们进行编译,打包运行等工作。

2、之后什么是Maven?

Apache基于ANT进行了升级,研发出了全新的自动化构建工具Maven。

Maven是Apache的一款开源的项目管理工具。

是目前用的最多的。

3、Maven概述

Maven工程

(1)POM工程
POM工程是逻辑工程。用在父级工程或聚合工程中。用来做jar包的版本控制。

(2)JAR工程
将会打包成jar,用作jar包使用。即常见的本地工程 —> Java Project。

(3)WAR工程
将会打包成war,发布在服务器上的工程。

Maven环境配置-1

首先在path中写入环境变量:路径精确到bin文件夹
然后CMD,mvn命令–》mvn help:system命令–》在C盘“主人”路径生成了.m2文件夹,至此Maven环境配成。

Maven仓库是基于简单文件系统存储的,集中化管理Java API资源(构件)的一个服务。

仓库中的任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径。得益于 Maven 的坐标机制,任何 Maven项目使用任何一个构件的方式都是完全相同的。

Maven 可以在某个位置统一存储所有的 Maven 项目共享的构件,这个统一的位置就是仓库,项目构建完毕后生成的构件也可以安装或者部署到仓库中,供其它项目使用。
对于Maven来说,仓库分为两类:本地仓库和远程仓库。

(1)远程仓库:不在本机中的一切仓库,都是远程仓库:分为中央仓库 和 本地私服仓库
远程仓库指通过各种协议如file://和http://访问的其它类型的仓库。这些仓库可能是第三方搭建的真实的远程仓库,用来提供他们的构件下载(例如repo.maven.apache.org和uk.maven.org是Maven的中央仓库)。

其它“远程”仓库可能是你的公司拥有的建立在文件或HTTP服务器上的内部仓库(不是Apache的那个中央仓库,而是你们公司的私服,你们自己在局域网搭建的maven仓库),用来在开发团队间共享私有构件和管理发布的。

默认的远程仓库使用的Apache提供的中央仓库:
https://mvnrepository.com/

(2)本地仓库:指本机的一份拷贝,用来缓存远程下载,包含你尚未发布的临时构件。

(3)仓库的优先级问题
在这里插入图片描述
(4)仓库配置问题-2
本地仓库是开发者本地电脑中的一个目录,用于缓存从远程仓库下载的构件。默认的本地仓库是${user.home}/.m2/repository。用户可使用settings.xml文件修改本地仓库。具体内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- 本地仓库配置 -->
  <localRepository>具体本地仓库位置</localRepository>
  <!-- 省略,具体信息参考后续内容。 -->
</settings>

远程仓库如果仓库A可以提供仓库B存储的所有内容,那么就可以认为A是B的一个镜像。例如:在国内直接连接中央仓库下载依赖,由于一些特殊原因下载速度非常慢。这时,我们可以使用阿里云提供的镜像http://maven.aliyun.com/nexus/content/groups/public/来替换中央仓库http://repol.maven.org/maven2/。修改maven的setting.xml文件,具体内容如下:

      <mirror> 
                <!-- 指定镜像ID(可自己改名) -->
                <id>nexus-aliyun</id> 
                <!-- 匹配中央仓库(阿里云的仓库名称,不可以自己起名,必须这么写)-->
                <mirrorOf>central</mirrorOf>
                <!-- 指定镜像名称(可自己改名)  -->   
                <name>Nexus aliyun</name> 
                <!-- 指定镜像路径(镜像地址) -->
                <url>http://maven.aliyun.com/nexus/content/groups/public</url> 
        </mirror>
配置JDK到IDEA的Maven工程-3

当你的idea中有多个jdk的时候,就需要指定你编译和运行的jdk:
在settings.xml中配置:

<profile>
                <!-- settings.xml中的id不能随便起的 -->
                <!-- 告诉maven我们用jdk1.8 -->
                <id>jdk-1.8</id>
                <!-- 开启JDK的使用 -->
                <activation>
                                <activeByDefault>true</activeByDefault>
                                <jdk>1.8</jdk>
                </activation>
                <properties>
                        <!-- 配置编译器信息 -->
                        <maven.compiler.source>1.8</maven.compiler.source>
                        <maven.compiler.target>1.8</maven.compiler.target>
                        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
                </properties>
    </profile>
在IDEA中创建Maven工程

在这里插入图片描述

Maven在IDEA中的项目结构

在这里插入图片描述
❀src/main/java
这个目录下储存java源代码

❀src/main/resources
储存主要的资源文件。比如xml配置文件和properties文件

❀src/test/java
储存测试用的类,比如JUNIT的测试一般就放在这个目录下面
因为测试类本身实际是不属于项目的,所以放在任何一个包下都显得很尴尬,所以maven专门创建了一个测试包
用于存放测试的类

❀src/test/resources
可以自己创建你,储存测试环境用的资源文件

❀src
包含了项目所有的源代码和资源文件,以及其他项目相关的文件。

❀target
编译后内容放置的文件夹

❀pom.xml
是Maven的基础配置文件。配置项目和项目之间关系,包括配置依赖关系等等

Maven常见命令

Maven的命令非常多,我们只是讲解常用的几个:(所有命令都可以在控制台运行的)
❀ install

本地安装, 包含编译,打包,安装到本地仓库

编译 - javac

打包 - jar, 将java代码打包为jar文件

安装到本地仓库 - 将打包的jar文件,保存到本地仓库目录中。

❀ clean

清除已编译信息。

删除工程中的target目录。

❀ compile

只编译。 javac命令

❀ package

打包。 包含编译,打包两个功能。

install和package的区别:

package命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库

install命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值