美文网首页
Maven笔记整理-基础

Maven笔记整理-基础

作者: 舞动的代码 | 来源:发表于2017-11-24 20:02 被阅读0次

概述

  • Maven是什么

  • Maven是一个优秀的项目构建工具

  • Maven提供了契约式的开发

  • 为什么使用Maven

  • 它可以方便将整个项目划分不同模块,模块和模块之间是有一定联系,具有依赖、聚合...等特点

  • 它为我们的jar文件提供一个统一的仓库,极大的方便我们对Jar依赖的引入

  • Maven的目录结构

  • enter image description here

安装

  • 因为maven本身就是开源,所以官方提供了免安装的压缩包
  • 解压官方的压缩包
    • Maven3.3.x要求JDK版本必须是1.7及以上版本
    • 注意解压路径中不要出现中文
  • 配置环境变量(不是必须的)
    • 步骤略..

    • 出现以下提示表示配置成功

    • enter image description here
注意事项

JDK的环境变量必须是JAVA_HOM的形式配置
如果需要在任意目录下使用maven的话,那么需要配置maven的环境

  1. M2_HOME=D:\apache-maven-3.3.9
  2. PATH=%M2_HOME%\bin

仓库

Maven依赖的一个搜索平台

更改本地仓库的存储位置
  • 默认情况下本地仓库的位置:C:\Users\Administrator.m2\repository
  • 一般情况下不用该目录作为仓库目录,重装系统之后该目录不存在
  • 修改步骤
    • 找到setting.xml文件:在maven_home\conf\settings.xml
    • 具体的更改项:
 <!-- localRepository
  | The path to the local repository maven will use to store artifacts.
  |
  | Default: ${user.home}/.m2/repository
 <localRepository>/path/to/local/repo</localRepository>
 -->
<localRepository>D:\\Maven-Repository</localRepository>
  • 将更改后的setting.xml文件复制一份到默认的仓库目录中,该步骤不是必须的!有的工具默认读取的位置:** C:\Users\Administrator.m2\settings.xml **
  • 更改仓库源(其实就是其他大公司搭建的私有服务器,私服搭建笔记参考下面)
  <mirrors>
      <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>
  </mirrors>

Maven版的HelloWorld

  • 编写主程序:src/main/java/coder163/HelloWorld.java
    package coder163;
    
    public class HelloWorld{
          public void sayHello(){
              System.out.println("HelloMaven");
          }
    }
    
  • 编写单元测试类:src/test/java/coder163/Test01.java
    package coder163;
    
    import org.junit.Test;
    public class TestHelloMaven{
          @Test
          public void show(){
              new HelloWorld().sayHello();
          }
    
    }
    
  • 编写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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>HelloWord001</groupId>
    <artifactId>Hello</artifactId>
    <packaging>jar</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>HelloWord001</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
        </dependency>
    </dependencies>
</project>
  • 常用指令
    • mvn compile :编译项目
    • mvn test :编译项目并且进行单元测试
    • mvn clean :清除targe目录
    • mvn package :将项目进行编译、测试、打包 jar\war\pom
    • mvn install :将项目进行编译、测试、打包、发布到仓库中,例如:
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.1.0 -Dpackaging=jar -Dfile=C:/lib/ojdbc14.jar
  • POM.xml标签解释

注意:maven中把项目名称、模块名称和版本统称为坐标,所有Jar的依赖都需要依靠坐标在仓库中进行查找

  • <modelVersion>4.0.0</modelVersion>:maven的版本信息,固定值.不用管
  • <groupId> :项目名称 <groupId>shop</groupId>
  • <artifactId> :模块的名称 <artifactId>user</artifactId>
  • <version> :项目发布的版本:测试版、快照版本、稳定版、发布版
  • <packaging> :项目的打包方式:jar、war、pom
  • <name> :随意
  • <url> :仓库的地址,maven默认情况会先检查本地仓库,如果本地仓库没有所需要的jar,那么会去中央仓库下载
  • <dependencies> :依赖,所有的依赖包都需要写在这个标签之内
  • <dependency> :具体的依赖

相关文章

网友评论

      本文标题:Maven笔记整理-基础

      本文链接:https://www.haomeiwen.com/subject/kfnfbxtx.html