参考:
JavaWeb学习笔记(全)(狂神)
Maven最全使用指南,都在这里了
1、介绍
在javaweb开发中,需要使用大量的jar,maven会自动帮我导入和配置jar包。
maven官网
中央仓库网址
Maven规定的目录结构

旧版本下载
官网下载:http://maven.apache.org/download.cgi
最下面的Previous Releases部分,点击archives;
选择对用版本进去,选择 binaries/,在选择对应的文件下载即可。
2、环境配置
Maven 是使用 Java 开发的,所以必须先安装配置 JDK。
M2_HOME maven目录下的bin目录
MAVEN_HOME maven的目录
在系统的Path中配置%MAVEN_HOME%/bin
测试是否配置成功:cmd -> mvn -version
出现版本号等信息即表示成功。
3、settings.xml
3.1、配置镜像
加速下载jar作用。
apache-maven-3.6.1\conf\settings.xml
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
3.2、配置本地仓库
apache-maven-3.6.1\conf\settings.xml
<localRepository>D:\apache-maven-3.6.1\Repository</localRepository>
4、idea配置maven

5、java使用maven
5.1、新项目

5.2、老项目
6、javaweb使用maven
6.1、新项目
因为使用 Maven 自带的 web 项目模板创建的项目目录不全,所以需要在 main 目录下创建 java 和 resources 目录。

6.2、老项目
参考博客
记得备份原项目
1、选中项目、右键

2、备份lib接着移除lib,然后编写pom.xml
将项目置于“空jar”状态。
①、补充pom.xml的头,自动生成的会略掉好几项必须的配置。
<modelVersion>4.0.0</modelVersion>
<groupId>com.shop</groupId>
<artifactId>Shop</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>Shop Maven Webapp</name>
<url>http://maven.apache.org</url>
②、接着是个体力活,进入每个java、properties、xml、jsp等文件使用Add Maven依赖方式自动导入(快捷键: alt+enter)。
③、经过上步,已经初步导入了大部份必需的依赖,接着,将一些其它依赖(可参考之前备份的lib)随之导入,千万别忽略这一步,因为类似 mysql-connector-java 等这些依赖一般是还未导入的!
3、移动原框架配置文件
将spring配置文件、数据库属性文件、日志配置文件等剪切至src/main/resources之下。

4、webapp文件夹
将原来放置在WebRoot路径下的文件(包括js,css,jsp等)都剪切至webapp文件夹之下,并删除WebRoot文件夹。
重要的是 WEB-INF 文件夹。

5、重新部署并测试
重新部署至 Tomcat(或Jetty) 测试效果。
基本上,到这一步离成功也就不远了(而我已经成功了)。若是…若是还有bug,多调调,看看日志,看看控制台输出,直至转换成功也不失为一次很棒的尝试。
7、idea中maven的按钮



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.0http://maven.apache.org/maven-v4_0_0.xsd">
<!--父项目的坐标。如果项目中没有规定某个元素的值,
那么父项目中的对应值即为项目的默认值。
坐标包括group ID,artifact ID和 version。-->
<parent>
<!--被继承的父项目的构件标识符-->
<artifactId/>
<!--被继承的父项目的全球唯一标识符-->
<groupId/>
<!--被继承的父项目的版本-->
<version/>
</parent>
<!--声明项目描述符遵循哪一个POM模型版本。模型本身的版本很少改变,虽然如此,
但它仍然是必不可少的,这是为了当Maven引入了新的特性或者其他模型变更的时候,
确保稳定性。-->
<modelVersion>4.0.0</modelVersion>
<!--项目的全球唯一标识符,通常使用全限定的包名区分该项目和其他项目。
并且构建时生成的路径也是由此生成, 如com.mycompany.app生成的相对路径为:
/com/mycompany/app-->
<groupId>cn.missbe.web</groupId>
<!-- 构件的标识符,它和group ID一起唯一标识一个构件。换句话说,
你不能有两个不同的项目拥有同样的artifact ID和groupID;在某个
特定的group ID下,artifact ID也必须是唯一的。构件是项目产生的或使用的一个东西,
Maven为项目产生的构件包括:JARs,源码,二进制发布和WARs等。-->
<artifactId>search-resources</artifactId>
<!--项目产生的构件类型,例如jar、war、ear、pom。插件可以创建
他们自己的构件类型,所以前面列的不是全部构件类型-->
<packaging>war</packaging
最低0.47元/天 解锁文章

200

被折叠的 条评论
为什么被折叠?



