Maven入门极简使用教程

Posted tea_year

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven入门极简使用教程相关的知识,希望对你有一定的参考价值。

Maven入门级别使用

回顾

拦截器

统一异常处理

​ 实现接口的方式。

​ 注解方式。(分享)

​ 如果是ajax请求,会将异常信息发送到客户端的响应中。

复习spring springmvc

SSM整合!

课前测:

本章内容

第一节:Maven简介

Maven读 : 没问

不能马瘟

​ 如果7位程序员,使用的IDE,不同,则将来出问题的几率会很大;1.不同工具问题;2.将来升级问题;

3.沟通问题;等等。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

1.什么是Maven?

​ Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档项目管理工具软件。

​ Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

​ Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程,行内专家、内行的含义。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。

2.为什么要用Maven?

Maven能干什么?能解决我们开发过程中的一些问题。

编译,测试,部署,打包。。。。

  • jar包引入问题

    我们之前的项目中每一次创建项目都需要复制粘贴好多个jar包(java项目打成的一个xxx.jar文件),麻烦,又占内存,使用maven可以更好的帮助我们导入jar包,并且节省内存!只需引入我们要导入jar包坐标就可以了!

  • 编译功能

    maven 也可以帮助我们编译项目,javac.exe java.exe 如果使用这个命令,一次只能编译一个java文件, 麻烦 !但是我们使用的各种高级开发工具,idea, eclipse ,myeclipes , springtoolsite …。所以说现在也基本不用maven 编译了。

  • 单元测试

    junit @Test maven 中集成的有单元测试功能。

  • 打包部署

    maven可以帮我们把项目打成 jar包/war包。

  • 项目依赖(分布式 maven的进阶使用)

3.Maven的依赖管理,仓库分类

​ maven 的工作需要从仓库下载一些 jar 包,本地的项目 test1、等都会通过 maven软件从远程仓库(可以理解为互联网上的仓库)下载 jar 包并存在本地仓库,本地仓库 就是本地文件夹,当第二次需要此 jar 包时则不再从远程仓库下载,因为本地仓库已经存在了,可以将本地仓库理解为缓存,有了本地仓库就不用每次从远程仓库下载了。


  • 本地仓库 :用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包,优先从本地仓库查找默认本地仓库位置在$user.dir/.m2/repository , $user.dir表示 windows 用户目录。
  • 远程仓库(私服):如果本地需要插件或者 jar 包,本地仓库没有,默认去远程仓库下载。远程仓库可以在互联网内也可以在局域网内。
  • 中央仓库 :在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包含了世界上大部分流行的开源项目构建。

第二节:Maven的安装和简单使用

2.1 Maven的下载安装

https://archive.apache.org/dist/maven/maven-3/ maven的下载地址

解压:放在一个灭有中文的目录中。

2.2 Maven的配置

  1. conf—>settings

2. 配置阿里云镜像

	<mirror>
	    <id>alimaven</id>
	    <name>aliyun maven</name>
	    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
	    <mirrorOf>central</mirrorOf>        
	</mirror>
  1. 配置maven默认的jdk环境

    在pom文件里面可以做下配置,一会儿再看.设置maven默认的jdk为1.8

    	<profile>
           <id>jdk-1.8</id>    
           <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>
    
  2. 将setting.xml文件复制一份放入 你自己的本地maven仓库中。

2.3 Maven的环境变量设置

此电脑—》属性—》高级系统设置—》环境变量:

跟jdk一样:

先配置:maven的家

变量名:MAVEN_HOME  变量值:安装的位置 (路径)

配置Path: 新建: %MAVEN_HOME%\\bin

配置完成后:cmd命令行窗口—> mvn -v

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tzXhkY0w-1645277332617)(assets/image-20210604104525829.png)]

2.4 Maven的常用命令

​ 直接启动web命令:mvn tomcat:run,这种可能会报错,mvn tomcat7:run,需要配置一下。

我们可以在 cmd 中通过一系列的 maven 命令来对我们的 maven-helloworld 工程进行编译、测试、运行、打包、安装、部署。

mvn clean   : 是 maven 工程的清理命令,执行 clean 会删除 target 目录及内容,比如从其他拿过来的项目,该命令不隶属于maven构建的声明关系。
mvn complie : compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target目录下,注意事项要看到哦。
mvn test    : 是 maven 工程的测试命令,mvn test,会执行 src/test/java 下的单元测试类。
mvn package : 是 maven 工程的打包命令,对于 java 工程执行 package 打成 jar 包,对于 web 工程打成 war
包。
mvn install : 是 maven 工程的安装命令,执行 install 将 maven 打成 jar 包或 war 包发布到本地仓库。
<build>
    <plugins>
      <!-- maven与tomcat8关联;使用tomcat7 -->
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
          <server>tomcat8</server>
        </configuration>
      </plugin>
        <!--打包问题的一个bug解决方式-->
      <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.4.2</version>
      <configuration>
        <skipTests>true</skipTests>
      </configuration>
    </plugin>
    </plugins>
  </build>

2.5 Idea配置Maven

file—>setting—>maven

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qmcQZNKc-1645277332618)(assets/image-20210604105808807.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t4Tvcdoh-1645277332620)(assets/image-20210604105927783.png)]

otherSettings的配置跟settings的配置一模一样。再配置一遍就可以了!

2.6 Maven创建java项目

1.不带骨架的来创建一个项目

Maven项目的目录结构

2.7 Maven创建Web项目

使用maven提供的原型骨架创建web项目。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hubY9hYj-1645277332621)(assets/image-20210604114628163.png)]

此时创建的项目中没有java和Resources目录:这两个目录需要我们自己创建;

创建java目录  :  main 右键--》directory -->取名字叫 java 
				java目录右键---》mark direcory as ---》 sources  Root
				
创建resources目录 : main 右键--》directory -->取名字叫 resources
				resources 目录右键---》mark direcory as ---》 Resources Root

案例:普通的servlet案例:

2.8 Maven的jar包来源

打开百度:https://mvnrepository.com/ 中央仓库的网址

—》 sources Root

创建resources目录 : main 右键–》directory -->取名字叫 resources
resources 目录右键—》mark direcory as —》 Resources Root


案例:普通的servlet案例:

#### 2.8 Maven的jar包来源

打开百度:https://mvnrepository.com/ 中央仓库的网址

以上是关于Maven入门极简使用教程的主要内容,如果未能解决你的问题,请参考以下文章

小白入门SpringBoot极简教程开篇

SpringBoot入门极简教程开篇

ABP 极简入门教程(三 权限)

数据处理入门干货:MongoDB和pandas极简教程

Nginx 极简入门教程!

Nginx 极简入门教程!