Maven

1. Maven简介

Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、测试、打包和发布等工作。

相信读到这篇文章的许多人有过或多或少的项目经历,说到项目,在纯是原生态代码无框架的时候,我们最痛苦的一件事就是导入各种各样的jar包,jar包太多以至于我们很难管理,项目功能稍多,就会出现好多好多的包,你要考虑在哪找这个包,还有它的包的依赖,让人很痛苦!这个时候,我们的救世主maven出现,轻松帮你解决这些问题。

Maven优点

1、原来的项目中需要的jar包必须手动“复制”、”粘贴” 到WEB-INF/lib 项目下,而借Maven,可以将jar包仅仅保存在“仓库”中,有需要使用的工程只需要“引用”这个文件,并不需要重复复制到工程中。
2、原来的项目中所需要的jar包都是提前下载好的,而Maven在联网状态下会自动下载所需要的jar包。首先在本地仓库中找,找不到就在网上进行下载。
3、原来的项目中一个jar包所依赖的其他jar包必须手动导进来,而Maven会自动将被依赖的jar包导进来。
4、原来的项目一个项目就是一个工程,而借助Maven可以将一个项目拆分成多个工程。

项目构建过程:

  • 1.项目清理:清理之前编译的代码。
  • 2.编译:将程序源代码编译为虚拟机可执行的代码,也就是 class 文件。maven 可以帮我们批量编译一堆代码。
  • 3.测试:maven 可以执行测试程序代码,验证你的功能是否正确。
  • 4.打包:将所有的 class 文件、配置文件等资源放到一个压缩文件中。 对于 java 程序,压缩文件是 xx.jar,对于 web 应用,压缩文件扩展名是 xx.war。
  • 5.安装:将 jar 文件或者 war 文件安装到本机仓库中。
  • 6.部署:将程序部署到服务器上,我们可以通过网址进行访问。

Maven可以帮我们做什么?

  • 1.自动下载需要的 jar 包,管理 jar 包的版本以及它们之间的依赖关系。
  • 2.帮你编译程序
  • 3.帮你打包程序
  • 4.帮你部署程序
  • 5.帮你管理项目中各个模块的关系

2. Maven安装搭建(windows)

前提是安装jdk(Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅)

2.1 下载maven

maven官网 http://maven.apache.org
在这里插入图片描述

2.2 安装配置maven

点击下载二进制的 apache-maven-3.9.2-bin.zip 进行解压,然后在系统环境中配置环境变量,在path中配置到bin目录

  • 配置环境变量
    • 1.新增变量
      变量名:MAVEN_HOME
      变量值:maven 的安装路径
    • 2.修改 path
      增加变量值:%MAVEN_HOME%\bin

配置成功后输入命令mvn -version

D:\>mvn -version
Apache Maven 3.9.2 (c9616018c7a021c1c39be70fb2843d6f5f9b8a1c)
Maven home: D:\Resouce\tools\apache-maven-3.9.2
Java version: 1.8.0_221, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_221\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

2.3 配置maven本地仓库

为什么要修改本地仓库?

Maven 默认的本地仓库在C/用户/.m2 文件夹里,随着下载的 jar 包越来越多,系统盘会越来越满,电脑会越来越卡,所以建议在 C 盘之外建一个本地仓库

如何将下载的 jar 文件存储到我们指定的仓库中呢?

需要在 maven 的服务器解压的文件中找到 conf 文件夹下的 settings.xml文件进行修
  • 添加本地仓库标签:
<localRepository>你的repository目录</localRepository>

例如:

<localRepository>D:\mavenRepository</localRepository>
  • 配置阿里云镜像下载地址
    因为国外远程仓库下载 jar 包速度慢,国内阿里云下载速度快。
在 setting.xml 文件里面添加:

<mirror>  
    <id>alimaven</id>  
    <name>aliyun maven</name>  
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>;  
    <mirrorOf>central</mirrorOf>          
  </mirror>
  • 完整的 setting.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>D:\mavenRepository</localRepository>

<mirrors>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
</mirrors>
</settings>

3. Maven安装搭建(linux)

3.1 下载maven

  • 在官网下载安装包,本次选择.tar.gz
  • 上传安装包到服务器

3.2 安装配置maven

  • 创建maven目录
  • 解压安装包至maven目录
  • 创建maven仓库目录
mkdir -p /usr/local/maven
tar -zxvf /home/apache-maven-3.9.3-bin.tar.gz -C /usr/local/maven
cd /usr/local/maven/apache-maven-3.9.3/
cd conf/
mkdir -p /m2/repository

3.3 编辑 settings.xml 文件

  • 修改资源库位置
  • 添加阿里云国内镜像
<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">

  <localRepository>/m2/repository</localRepository>

  <pluginGroups>
  </pluginGroups>

  <proxies>
  </proxies>

  <servers>
  </servers>

  <mirrors>
    <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>

  <profiles>
  </profiles>
</settings>

3.4 添加 maven 环境变量内容

vi /etc/profile
...
MAVEN_HOME=/usr/local/maven/apache-maven-3.8.5
PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_HOME PATH
source /etc/profile

4. IntelliJ IDEA创建web项目

一定要是旗舰版或者破解版,社区版本不支持
一定要是旗舰版或者破解版,社区版本不支持
一定要是旗舰版或者破解版,社区版本不支持

4.1 创建项目

首先利用maven创建webapp,注意一定选择maven-archetype-webapp
在这里插入图片描述

4.2 创建源码目录

将工程命名为MyJava,等工程创建好后,创建源码目录,默认是没有的,一般放在main下面,目录名叫java
在这里插入图片描述

4.3 在java目录中添加MyServlet.java代码

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
 
public class MyServlet extends HttpServlet {
    protected void doPods(HttpServletRequest request,HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        doGet(request,response);
    }
 
    protected void doGet(HttpServletRequest request,HttpServletResponse response) throws javax.servlet.ServletException,java.io.IOException{
        //request.getRequestDispatcher("/index.jsp").forward(request,response);
        response.setContentType("text/html");
        response.getWriter().println("my first servlet code");
    }
}

4.4 在pom.xml文件添加必要的dependency依赖

<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>org.example</groupId>
  <artifactId>MyJava</artifactId>
  <packaging>war</packaging>
  <version>${project.release.version}</version>
  <name>MyJava Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>

    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <!--根据个人需要自己修改-->
          <source>11</source>
          <target>11</target>
          <webResources>
            <resource>
              <directory>src/main/webapp</directory>
              <targetPath>/</targetPath>
            </resource>
          </webResources>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.4.3</version>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.8.2</version>
      </plugin>

    </plugins>
  </build>
<!--
  <properties>
    <project.release.version>0.1-SNAPSHOT</project.release.version>
  </properties>
-->
  <profiles>
    <profile>
      <id>maven-releases</id>
      <properties>
        <project.release.version>0.1</project.release.version>
      </properties>
    </profile>
  </profiles>

  <distributionManagement>
    <repository>	<!-- release 版本上传用的仓库 -->
      <id>maven-releases</id>	<!-- server 的 id -->
      <url>http://192.168.17.133:8081/repository/maven-releases/</url>	<!-- 仓库的 URL -->
    </repository>
    <snapshotRepository>
      <id>maven-snapshots</id>
      <url>http://192.168.17.133:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
  </distributionManagement>


</project>

4.5 修改web.xml文件

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>MyServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/demo</url-pattern>
  </servlet-mapping>
</web-app>

4.6 在main/webapp下修改index.jsp,没有则新建

在这里插入图片描述

<%--
 Created by IntelliJ IDEA.
 User: yzcn
 Date: 2023/7/19
 Time: 17:28
 To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>java demo</title>
</head>
<body>
welcome to learn java,come on ~ 20230719
</body>
</html>

4.7 开始tomcat配置

配置server目录和端口
在这里插入图片描述
在这里插入图片描述
配置tomcat部署
在这里插入图片描述

4.8 启动调试tomcat

配置好tomcat后,就可以在右侧看到绿色的按钮,单击后就可以启动tomcat
输入localhost:8080/MyJava_war/就可以看到这个内容
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值