JavaWeb之Maven

时间:2022-07-22
本文章向大家介绍JavaWeb之Maven,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

我为什么要学习这个技术?

  1. 在Javaweb开发中,需要使用大量的jar包,我们手动去导入;
  2. 如何能够让一个东西自动帮我导入和配置这个jar包。 由此,Maven诞生了!

Maven项目架构管理工具

我们目前用来就是方便导入jar包的!

Maven的核心思想:约定大于配置

  • 有约束,不要去违反。

Maven会规定好你该如何去编写我们的Java代码,必须要按照这个规范来;

下载安装Maven

官网;https://maven.apache.org/

下载完成后,解压即可;

电脑上的所有环境都放在一个文件夹下,方便管理;

配置环境变量

在我们的系统环境变量中

配置如下配置:

- M2_HOME                  maven目录下的bin目录
- MAVEN_HOME               maven的目录
- 在系统的path中配置        %MAVEN_HOME%bin

测试Maven是否安装成功,保证必须配置完毕!

阿里云镜像

<mirrors></mirrors>标签中添加

<mirror>
    <id>aliyunmaven</id>
    <mirrorOf>*</mirrorOf>
    <name>阿里云公共仓库</name>
    <url>https://maven.aliyun.com/repository/public</url>
</mirror>

在IDEA中使用Maven

创建一个MavenWeb项目

IDEA中的Maven设置

注意:IDEA项目创建成功后,看一眼Maven的配置

这个只有在Web应用下才会有!

标记文件夹功能

pom文件

pom.xml 是Maven的核心配置文件,主要就是用来引入依赖的

值得注意的是:maven由于他的约定大于配置,我们之后可以能遇到我们写的配置文件,无法被导出或者生效的问题,解决方案:

<!--在build中配置resources,来防止我们资源导出失败的问题-->
<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>true</filtering>
        </resource>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

IDEA操作

可能遇到的问题

1. Maven 3.6.2

解决方法:降级为3.6.1/或者使用idea默认的Maven3(推荐)


2. IDEA中每次都要重复配置Maven

在IDEA中的全局默认配置中去配置


3. maven默认web项目中的web.xml版本问题

解决方法: 替换为webapp4.0版本和tomcat一致

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0"
         metadata-complete="true">



</web-app>

Maven仓库的使用

地址:https://mvnrepository.com/