IntelliJ IDEA-Maven使用教程

本文详细指导Maven的下载链接、环境配置、settings.xml设置、IDEA项目创建流程,包括依赖管理、仓库路径、Maven命令使用和常见问题解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Maven 下载

在官网上下载Maven apache-maven-3.5.4

或者我这里提供了下载包

链接:https://pan.baidu.com/s/15eGHQ0e6zVag3Q-fxWmHWg
提取码:1234

https://mvnrepository.com/ 官网依赖查询

https://maven.aliyun.com/mvn/search 阿里云依赖查询

Maven环境配置

解压后 需要添加环境变量才能使用

MAVEN_HOME

在这里插入图片描述

还需要配置 JAVA_HOME

Maven的settings.xml配置文件

然后修改配置文件 在conf目录下 settings.xml 配置文件

  1. 添加仓库路径 自己创建个文件夹 用于jar包存放 否则默认就放在c盘了

    <localRepository>E:\Maven\apache-maven-3.6.3-bin\kucun</localRepository>

settings.xml配置你直接在本文最下面(文章结尾)粘贴下 ,按照上面教程修改下仓库位置就行了

在IDEA中创建Maven项目

创建项目前先 配置Maven的设置

  1. 是maven安装的路径

  2. settings.xml是配置文件的路径

  3. 是下载的jar包存放位置 会自动导入的 (只要settings.xml配置没问题)

在这里插入图片描述

import Maven…是自动导包

automatically download 是自动下载 不然你每次 添加 Maven 的时候 还要刷新下载

VM options for importer 是下载速度 768兆 一般默认就行了 除非项目过大 打开太慢了 进行调大参数

以上配置完了开始创建项目 这里以webapp项目为例 其他的项目创建方式一样

在这里插入图片描述

Name项目名称-必须是英文否则pom.xml报错 ->项目倒入失败

在idea 中自动生成 不用你写了

Groupld 工件组的名称,通常是一个公司域名倒置

Artifactld 组内工件的名称,通常是项目名称

Version 是版本号

配置项目的Maven

这里特别提醒

如果这里不选择 自己的 Maven 而是默认的话 那么肯定会创建项目失败的 所以

一定要选自己的 Maven安装地址, 配置文件 和 仓库

在这里插入图片描述

然后就可以了 但是 他 在右下角 会弹出 选项框 选择 第二个

Enable Auto import 就行了(允许自动导入)) 别选错了 否则你要删除 ,重新在来一遍了

获取jar的Maven依赖坐标信息

https://mvnrepository.com/

在这里插入图片描述

在这里插入图片描述

直接复制到

pom.xm文件

<dependencies> 标签内部

就行了 然后他就会自动下载了 如果没有下载 爆红了那么就刷新一下或者删除在添加一下

在这里插入图片描述

看软件下面有没有 进度条在下载东西 下载完后 只要不暴红了 那么 jar就下载到 你的本地仓库里了

如果还不行那么 就点击下载 然后在刷新

在这里插入图片描述

jar依赖冲突检测工具

当将所有需要的jar包 下载完了 这时候 需要 用到 一个工具

直接搜索 然后 下载就行了

下载完成后重启 idea 否则没有效果 然后 打开 pom.xml文件的时候 下面就会出现

左边的是文本 右边的是工具

在这里插入图片描述

当将所有的冲突的 jar包给 解决了后 打开indea 提供的 jar关系视图 看看

文件内右键

在这里插入图片描述

可以看到 没有 任何 红线 表示 jar的冲突解决完了

Maven Helper 工具 有时候会被 idea 给 干掉 不能使用了

在这里插入图片描述

这时候 不要慌 将 这个工具 给删除 了 然后重新下载 一遍 就行了重启idea就行了

Maven dos命令

在idea中直接是可以使用的 无需打命令

在这里插入图片描述

在dos 中需要cd 进入到 项目的 根目录 之后操作命令

打包:mvn package
编译:mvn compile
清空:mvn clean(清除编译后目录,默认是target目录)
安装jar包到本地仓库中:mvn install

这里注意的是如果 ,发现运行 mvn compile失败

第一步:mvn install (把当前项版本等安装到本地仓库 org\example 目录下)
第二步:mvn compile

反正就是只要是失败了就先 mvn install 然后在说

Maven中使用Tomcat

有两种使用方案 第一种是使用IDEA自带的Tomcat 来启动(常用) 第二种是使用Maven里的Tomcat7来启动

使用IDEA自带的Tomcat

  1. 随便找一个index.jsp 文件 右键

在这里插入图片描述

然后弹出窗口 配置就行了

注意事项 他默认是war 项目 但是 我们需要热部署 所以不能用这个项目

点击 - 删除掉 然后 +号

在这里插入图片描述

在这里插入图片描述

然后就Apply 引用配置 就行了

  1. 或者 点击IDEA右上角

在这里插入图片描述

然后会出现一个这样的窗口

画红x的不要去点 这个是自动装配项目 最好是手动自己去配置

然后就Apply 引用配置 就行了

使用Maven中插件Tomcat7

为啥不使用Tomcat8呢 反正我是没有成功过各种问题

使用前需要在pom.xml中的<build>里添加一些配置才能使用

<!--tomcat7  热部署命令 : tomcat7:run -->
  <pluginManagement>      
    <plugins>
        
		<plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
          <configuration>
            <path>/</path>
            <port>8080</port>
            <server>tomcat7</server>
          </configuration>
          <executions>
            <execution>
              <phase>package</phase>
              <goals>
                <goal>run</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        
     </plugins>
    </pluginManagement>   
      

然后

然后 你还需要 添加 Selvet 的 依赖 以及 jsp 的依赖 否则有些功能可能无法使用的

<dependency> 
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>jsp-api</artifactId>
  <version>2.0</version>
  <scope>provided</scope>
</dependency>


在这里插入图片描述

tomcat7:run

在这里插入图片描述

然后在启动Maven前需要将 之前的 target 文件删除 然后重新配置

先执行clean 等清空 target 然后 install进行 重新加载 target 和 将项目依赖重新生成到本地仓库里

完成后 在启动Maven 启动按钮就是配置旁边的 绿色小三角 启动后就变成了 绿色圆三角了

在这里插入图片描述

他会默认加载你web.xml里配置的默认启动项

  <!--    默认启动文件-->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

将此网址复制到游览器的url上就行了

如果在启动过程中出现了

Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:run
  1. 你的web.xml路径有问题 或者其他配置文件没配置好 也会导致Tomcat启动失败

  2. 如果之前就能启动但是在修改后就不能启动了那么需要 将项目clean 清理一下 让在重新部署下install

如果出现clean清理失败的情况那么 一定是有文件被占用 到任务管理器里详细信息将全部的java.exe给结束了 然后你在试试

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.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

<!--    项目版本在仓库中 储存 位置-->
    <groupId>org.example</groupId>  
	<!--   项目名称-->
    <artifactId>pom-demo</artifactId>
	<!--   项目版本号-->
    <version>1.0-SNAPSHOT</version>
		<!-- 最后打包成什么类型的 (war/ jar)-->
    <packaging>jar</packaging>
		<!--  全局属性 -->
	<properties>
			 <!--  将项目 编译 的编码格式 -->
		 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
			 <!--  使用jdk 1.8  来编译 -->
		 <maven.compiler.source>1.8</maven.compiler.source>  
			 <!--  使用jdk 1.8 来编译 -->
		 <maven.compiler.target>1.8</maven.compiler.target>       
	</properties>
	
	
	    <!--    依赖管理,添加在其中的依赖会被导入-->
    <dependencies>
	
        <dependency>
			    <!--    jar 名称 -->
            <groupId>commons-lang</groupId>
			   <!--    存放路径(仓库/xx) -->
            <artifactId>commons-lang</artifactId>
			   <!--    jar 版本号 -->
            <version>2.6</version>
			<!--    作用范围 -->
			<scope>provided</scope>    
        </dependency>
		
		
    </dependencies>
    <!--    依赖管理,这里配置了之后不会实际导入,只是指定了导入版本,其子模块就可以直接使用而不需要指定版本了-->
    <dependencyManagement>

    </dependencyManagement>
    <!--    maven编译和打包处理-->
    <build>
        <!--        插件配置,将项目打包成一个可执行的jar包,并将依赖打包进去-->
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <appendAssemblyId>false</appendAssemblyId>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                    <archive>
                        <manifest>
                            <!-- 此处指定main方法入口的class -->
                            <mainClass>pom.demo.PomDemo</mainClass>
                        </manifest>
                    </archive>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>assembly</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <!--        指定jar包名称-->
        <finalName>pom-demo</finalName>
    </build>
</project>

scope 作用范围:一般就用 compile 或者 provided

compile(默认) 全局都能使用这个jar依赖而且会将jar打包到项目里
provided 全局都能使用这个jar 不会将jar 打包到项目里
test 权限 test范围的依赖在一般的编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用。就是是在测试目录(绿色的)下才能使用

在这里插入图片描述
<build> 节点下的配置都是Maven中的插件
在这里插入图片描述
如果这里报错 肯定就是插件或者版本…写错误了

Maven可能出现的错误解决方法

Mvan模板创建失败解决办法

如果出现 创建失败 没有创建出指定的模板结构

比如webapp模板 没有这些机构的话

那么肯定就是配置文件 或者 仓库路径 的问题 请到idea 的设置里将路径填好

创建Maven 项目出现的错误和报错信息

报错信息

Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate (default-cli) :The desired archetype does not exist (org.apache.maven.archetypes:maven-archetype-webapp:RELEASE)

解决办法

报错的文件可能不相同 大致是以上这种报错的那么就进入maven仓库中 找到错误信息上org.apache.maven.archetypes:maven-archetype-webapp 这个文件给他删除了然后重新创建项目就行了

Maven中jar依赖下载失败解决办法

  1. 先进入官网找到对应版本的jar看看那个jar能手动下载吗??

    很多人钻牛角尖 这个jar不能下载 他还一直在哪里添加这个jar的Maven坐标 ,然后开始喷子模式

  2. 开启了离线模式了

还有注意这个地方 别不小心点了 这个是和上图那个配置是关联的

  1. 还有时候 添加好了 但是 下载的是一个空目录 在Maven仓库里面就一个文件或者2个文件 而且一直爆红 解决办法:进入Maven仓库里将这个版本文件夹内所有文件删除 然后 将坐标删除 刷新 在添加进入 刷新maven 就好了

    如果还是报错 估计就是这个版本不能用 换一个试试

Plugins 错误

如果创建 Maven web 成功了发现 这里错误了

在这里插入图片描述

先检测配置里 有没有设置好 (有可能你配置了但是 后期因为xx原因恢复默认了) 所以需要你去检测下

在这里插入图片描述

以上没有问题那么 就是 pom.xml文件内 <build> 标签内的内容不全 或者错误

将下面的代码

<build>
 <finalName>项目名称</finalName>
 <pluginManagement>
   <plugins>
     <plugin>
       <artifactId>maven-clean-plugin</artifactId>
       <version>3.1.0</version>
     </plugin>  
     <plugin>
       <artifactId>maven-resources-plugin</artifactId>
       <version>3.0.2</version>
     </plugin>
     <plugin>
       <artifactId>maven-compiler-plugin</artifactId>
       <version>3.8.0</version>
     </plugin>
     <plugin>
       <artifactId>maven-surefire-plugin</artifactId>
       <version>2.22.1</version>
     </plugin>
     <plugin>
       <artifactId>maven-war-plugin</artifactId>
       <version>3.2.2</version>
     </plugin>
     <plugin>
       <artifactId>maven-install-plugin</artifactId>
       <version>2.5.2</version>
     </plugin>
     <plugin>
       <artifactId>maven-deploy-plugin</artifactId>
       <version>2.8.2</version>
     </plugin>
   </plugins>
 </pluginManagement>
</build>

替换就行了 记得把 <finalName> 项目名称添加一下

Dependencies 错误

如果这里面错误 那么 不用想了 肯定是jar包下载失败了 或者找不到此jar了

到Maven仓库里找到对应 报错目录 给他删除就行了 然后在重新在网上找一个对应的jar依赖坐标 添加一下

@Test无法使用

1.test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖

2.compile范围指的是编译范围有效,在编译和打包时都会讲依赖存储进去

3.provided依赖:在编译和测试范围有效,最后生成war时不会加入,

一般默认为test 给他换成 provided就可以了

jstl和EL语言无法解析解决办法

原因是因为maven生成的web.xml版本太低了,2.5之前web.xml文件中的头定义中,el表达式默认是忽略不解析的,故需要显示声明解析el表达式

修改为 :

<?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_3_1.xsd"
        version="3.1">



</web-app>

settings.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:\Maven\kucun</localRepository>
   
		<pluginGroups>
		  </pluginGroups>
		  <proxies>
		  </proxies>
		  <servers>
		  </servers>

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

  <profiles>


  </profiles>


 
</settings>
点赞 -收藏-关注-便于以后复习和收到最新内容
有其他问题在评论区讨论-或者私信我-收到会在第一时间回复
如有侵权,请私信联系我
感谢,配合,希望我的努力对你有帮助^_^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡安民

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值