1.Maven简介
1.1 Maven是什么:
Maven是一个流行的项目管理工具,用于构建、发布和管理Java项目。它提供了一种规范的项目结构,使开发人员能够更轻松地组织和管理项目的依赖关系、构建过程和文档。Maven使用一个基于XML的配置文件(pom.xml)来描述项目的结构和构建过程。Maven是一款功能强大的项目管理工具,广泛应用于Java项目的开发和构建过程中。
1.2 Maven的作用及优势:
- 项目管理:Maven提供了一种规范的项目结构,使开发人员能够更轻松地组织和管理项目的依赖关系、构建过程和文档。
- 依赖管理:Maven能够自动解决和管理项目的依赖关系。
- 构建自动化:Maven提供了一套标准化的构建周期和构建任务。
- 多模块项目支持:Maven能够轻松地管理和构建多模块项目。
- 标准化与共享:Maven提供了大量的开源构建插件和工具,使得项目构建更加标准化和通用化。
1.3 Maven的作用领域:
Maven的作用领域
作用领域 | 说明 |
企业级应用开发 | Maven非常适用于企业级应用的开发。对于大型的企业应用,通常会有多个模块和依赖关系需要管理,Maven提供了方便的多模块项目支持和依赖管理,使得开发、构建和部署这些复杂应用更加高效和可靠。 |
框架和库的开发 | Maven在开发框架和库时也非常有用。开发人员可以使用Maven来管理和发布自己的框架或库,并轻松与其他开发人员共享和使用。Maven提供了标准的打包和发布机制,以及仓库管理功能,使得框架和库的分发更加方便和可控。 |
Web应用开发 | 对于构建和管理Web应用程序,Maven也是一种常见的选择。通过使用Maven,可以定义和管理Web应用的依赖项,如Servlet容器、数据库驱动程序等。同时,Maven还可以处理资源的编译和打包,简化了Web应用的构建和部署过程。 |
Android应用开发 | 尽管Android开发通常使用Gradle作为首选构建工具,但Maven仍然可以用于Android应用的构建和依赖管理。开发人员可以在Android项目中使用Android Maven插件,以便于管理依赖、构建APK文件和执行其他构建任务。 |
1.4 Maven的使用过程:
- 通过中央仓库地址https://mvnrepository.com/获取pom依赖字符串
- 将字符串粘贴到Maven工程的指定文件pom.xml中
- 从中央仓库将指定公司、项目、版本下载下来,下载到本地仓库中
- 将本地的jar在工程中进行引用
图解:
2. Maven的安装及配置
2.1 Maven的下载:
网址: http://maven.apache.org/download.cgi
下载maven安装包,解压即可使用
2.2 Maven环境变量配置
2.2.1 复制binwen文件夹所在位置的文件路径
先将下载好的压缩包右击进行解压提取,点击选择答bin文件夹下,复制该文本路径。
D:\MYsoftware\Maven\apache-maven-3.5.0-bin\apache-maven-3.5.0-bin\apache-maven-3.5.0
2.2.2 配置Maven的环境变量
1.右击此电脑,点击属性,选择高级系统设置,选择环境变量
2. 在系统变量中点击新增,变量名输入:MAVEN_HOME;变量值输入之前复制binwen文件夹所在位置的文件路径,点击确认即可。
3. 在变量名为Path中添加一个变量值为:%MAVEN_HOME%\bin
2.3 检验是否安装好Maven
按住win+R,输入cmd,进入终端,输入指令mvn -version,回车即可查看安装MAVEN的版本,即显示版本说明安装成功。
2.4 设置本地仓库所属路径和私有仓库
选择你所解压下的settings.xml文件:D:\MYsoftware\Maven\apache-maven-3.5.0-bin\apache-maven-3.5.0-bin\apache-maven-3.5.0下的conf文件下的settings.xml文件。操作如下图所示
找到 <mirrors>将里面的修改为阿里私库,修改内容如下
<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror>
修改后如下图所示
3. 将Maven集成到开发工具中(Eclipse)
3.1 先配置开发工具的编码
进入到Eclipse中点击上方的window,选择Preferences,在左上角的搜索区域搜索Workspace,选择General下的Workspace,滑到最下方,选择Other,下拉框选择UTF-8。将<localRepository>/path/to/local/repo</localRepository>里的内容修改成你的本地仓库的路径
在配置完java编码,然后搜索jsp,选择JSP Files,在右方的Encoding的下拉框选择UTF-8。
3.2 配置开发工具的服务器
点击Eclipse左上方的window,选择Preferences,在搜索框中搜索server,选择Server下的Runtime Environme,然后点击有方的add按钮,根据自身的Tomcat服务器的版本选择对应的版本点击next;点击Browser按钮选择你Tomcat的文件,JRE选择对应的JDK点击Finish完成即可。
(操作如图)
配置好服务器后 还要将服务器应用到项目上,应用上后左侧的Project Explorer会出现一个Servers文件夹说明服务器配置应用成功。
3.3 关闭开发工具不必要的检验
点击Eclipse左上方的window,选择Preferences,在搜索框中搜索Validation,选择Web上方的Validation,右侧的检验全部关闭点击Disable All按钮,只勾选第一个——Application Client Validator这个选项。
3.4 在开发工具中(Eclipse)部署Maven
点击Eclipse左上方的window,选择Preferences,在搜索框中搜索Maven,选择左侧的Installations选项,点击右侧的Add按钮,点击Directory按钮,选择到你所解压的Maven的文件夹。点击Finish,在点击Apply应用。
然后再点击User Settings设置Maven的访问权限。Global Settings:全局不管是你的电脑还是别的用户都可以使用;User Settings:当前电脑用户访问。二者选一设置即可。点击Browse...按钮选择D:\MYsoftware\Maven\apache-maven-3.5.0-bin\apache-maven-3.5.0-bin\apache-maven-3.5.0下的conf文件下的settings.xml文件。(操作如下)
4. 创建Maven项目示例案例
4.1 创建MavenWeb项目
右击左侧空白部分点击New选项,选择Other,在搜索框中搜索Maven,选择Maven project,点击Next,Catalog下拉框选择Internal(本地电脑),滑动区域选择最后一个选项(maven-archetype-webapp),点击Next。输入Group Id和Artifact Id点击Finish即可。
4.2 补全Maven项目的目录结构(操作如下)
右击项目,点击Build Path,选择Configure Build Path,点击右上方的Source,取消下方的Allow output选项,最后点击Apply and Close即可。
4.3 创建项目文件编写代码
4.3.1 配置jar包依赖
需要的jar包依赖
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>
修改pom.xml文件
<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>com.yx</groupId> <artifactId>muyi</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>muyi Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>muyi</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build> </project>
可以在www.mvnrepository.com 该网址查询你所需的jar包及版本进行对pom.xml的修改达到效果使用。
4.3.2 检验jar包是否有版本冲突
点击pom.xml文件,右击文件内容选项Run As,在选择Maven test运行即可。
如果出现版本问题则有两种解决方法,一是找到本地仓库路径将所有文件删除重新下载;二是找到出问题的某个依赖删除该依赖文件即可。
4.3.3 修改jsp文件版本(修改web.xml文件)
web.xml
<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_3_1.xsd" version="3.1"> <display-name>Archetype Created Web Application</display-name> </web-app>
4.3.4 jsp代码(index.jsp)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> Hello Maven ...... </body> </html>
4.3.5 Servlet文件代码(HelloMavenServlet)
package com.yx.web; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/hello") public class HelloMavenServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("Hello Maven....."); req.getRequestDispatcher("/index.jsp").forward(req, resp); } }
4.3.6 解除隐藏问题,方便后续用Maven写自定义MVC三层架构实现增删改查。
右击项目,选择Maven,点击Update Project,点击Ok即可,项目有问题如图所示
解决方案:(如图操作)
在重复之前的操作右击项目,选择Maven,点击Update Project,点击Ok即可。解决后如下图
5. 测试项目
显示如操作后显示一样,控制台打印Hello Maven.....以及页面显示Hello Maven.....则说明测试成功。
结束语
感谢大家的阅读和支持,敬请期待下期博客带来的意想不到的收货。老铁三连一波。