【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven

一、在eclipse中使用Maven

1.1 安装Maven插件

    打开eclipse,点击菜单 Help - > Install New Software,点击 Add按钮。
        Name:m2e 
        Location: http://download.eclipse.org/technology/m2e/releases

注:由于新版本的 eclipse,已经直接集成了 Maven,所以无需在安装 m2eclipse 插件。

1.2 在eclipse中配置Maven

    1、打开eclipse,点击菜单Window -> Preferences,找到Maven -> Installations,修改默认Maven,点击Add添加自己的Maven。

    注意:如果自带的Maven版本是3.3+,可以省略此步骤,使用默认的即可。当然也可以使用自己安装的Maven。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第1张图片

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第2张图片

    2、点击User Settings,重新选择User Settings文件和Local Repository路径。

    注意:正常来说,eclipse会默认使用用户目录下面的.m2文件夹下的settings/xml,以及自动识别settings.xml文件的配置信息。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第3张图片

     3、配置下载 jar 包的源码和文档(如需)。
    
    注意:如果勾选下面两项,则在下载依赖的时候,依赖对应的源码和文档都会一起下载(个人不推荐勾选)。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第4张图片

1.3 在eclipse中创建Maven项目

1.3.1 创建Maven Java项目

    1、点击File -> New -> Project,找到Maven -> Maven Project。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第5张图片

     2、点击下一步,选择Maven archetype(原型)。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第6张图片

     3、Catalog选择默认是All Catalogs,表示所有的原型。在Catalog中选择Internal,表示Maven内置的类型(官网提供的)。
    
        如果是Maven Java项目选择maven-archetype-quickstart。
        如果是Maven Web项目选择maven-archetype-webapp。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第7张图片

     4、输入Maven坐标。
        Group Id:公司域名倒置。
        Artifact Id:项目名。
        Version:版本号。
        Package:按需定义。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第8张图片

    5、Maven会自动下载项目所需依赖包,完成后重构项目结构。

    注意:eclipse默认引入的junit依赖版本为3.8,我们将其定义为4.12。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第9张图片

     6、删除自动生成App.java和AppTest.java,并编写项目代码即可。

项目源代码Student.java:

package com.maven;

public class Student {
    private int id;
    private String name;
    private String sex;
    private double score;

    public Student() {
        super();
        // TODO Auto-generated constructor stub
    }

    public Student(int id, String name, String sex, double score) {
        super();
        this.id = id;
        this.name = name;
        this.sex = sex;
        this.score = score;
    }

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public double getScore() {
        return score;
    }
    public void setScore(double score) {
        this.score = score;
    }

    @Override
    public String toString() {
        return "Student [id=" + id + ", name=" + name + ", sex=" + sex + ", score=" + score + "]";
    }

}

项目测试代码StudentTest.java:

package com.maven;

import org.junit.Test;

public class StudentTest {

	@Test
	public void test1() {
		Student stu = new Student(101, "张三", "男", 22);
		System.out.println(stu);
	}
}

    7、代码编写后,右击项目Run As中可选择需要执行的Maven命令。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第10张图片

 执行Maven Test:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第11张图片

     注意:我们发现eclipse中并没有Maven package命令,我们可以通过Maven build在eclipse中会调起命令配置界面,在这个插件上让你自己去配置执行目标的。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第12张图片

1.3.2 创建Maven Web项目

    1、按照之前的步骤,在选择Maven archetype(原型)的时候选择选择maven-archetype-webapp,创建Maven Web项目。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第13张图片

 建立Maven Web项目后目录结构如下:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第14张图片

    在搭建好Maven项目之后,项目上会出现一个小红叉,通过观察这个JSP文件中报错位置的提示信息我们发现,实际上这是因为我们的项目中没有导入Java EE的相关JAR文件导致的。
    
    在接下来的操作中,我们有两种选择:
        1.1 通过Build Path手动导入Java EE相关Jar包。
        1.2 通过Maven的pom.xml文件配置这些Jar包的相关依赖。

    我们使用的可是Maven项目!手动导入Jar包,多丢人啊!妥妥的选择使用Maven配置依赖啊!

    2、需要手动创建src/main/java,src/test/java,src/test/resources等源码目录。
    
    注意:src/main/webapp为存放web的根目录,类似于WebContent目录。但其中的index.jsp和WEB-INF目录下的web.xml因版本过早,需要删除重建。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第15张图片

     3、通过Maven的pom.xml文件配置这些Jar包的相关依赖。
        打开:https://mvnrepository.com,并搜索javaee关键字,选择使用最多的一个选项:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第16张图片

     接下来选择基于Java 8版本的Java EE类库:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第17张图片

     将其中的依赖声明代码复制到项目的pom.xml文件中:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第18张图片

或者单独配置:



    javax.servlet.jsp
    jsp-api
    2.1
    provided




    javax.servlet
    javax.servlet-api
    3.0.1
    provided




    javax.servlet
    jstl
    1.2

本地tomcat部署Maven Web项目:

     https://www.cnblogs.com/noyitela/p/10386455.html

Maven命令部署Maven Web项目:

    在pom.xml中添加tomcat7-maven-plugin的插件。
    
    注意:如果你的版本是tomcat7-maven-plugin 2.0 的话,由于它不支持 jdk 1.8,所以把它换成 tomcat7-maven-plugin 2.2就行了。


    maven-web-eclipse
    
        
            org.apache.tomcat.maven
            tomcat7-maven-plugin
            2.2
        
    

    这样就配置好了,记得把Goals改成tomcat7:run。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第19张图片

1.4 执行Maven命令报错的解决方案

执行Maven命令报错:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第20张图片

    错误原因:eclipse的执行环境默认是jre,Maven的执行环境是需要JDK,而不是jre。

    1、点击Window -> Preferences -> Java -> Installed JRES -> Add -> Standard VM -> 选择自己安装的JDK。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第21张图片

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第22张图片

     2、右击当前的项目Properties -> Java Build Path -> Libraries -> Add Library -> JRE System Library -> 勾选Workspace default JRE。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第23张图片

     其他方案:https://blog.csdn.net/weixin_44405634/article/details/100837978

二、在IDEA中使用Maven

2.1 IDEA自带Maven插件,无需安装

2.2 在IDEA中配置Maven

    1、打开IDEA,点击菜单File -> Settings,找到Build,Execution,Deployment -> Build Tools -> Maven,修改默认Maven。

    注意:如果自带的Maven版本是3.3+,可以省略此步骤,使用默认的即可。当然也可以使用自己安装的Maven。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第24张图片

    2、在Build,Execution,Deployment -> Build Tools -> Maven -> Importing中配置自动下载 jar 包的源码、文档和注解。

    注意:如果勾选下面两项,则在下载依赖的时候,依赖对应的源码和文档都会一起下载(个人不推荐勾选)。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第25张图片

2.3 在IDEA中创建Maven项目

2.3.1 创建Maven Java项目

    1、点击File -> New -> Project,找到Maven,勾选Create from archetype,选择需要的原型,quickstart建立Java项目,webapp建立JavaWeb项目。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第26张图片

     2、填写maven坐标,group ID:公司名,artifactID:项目名,version:版本号,下一步直到完成。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第27张图片

     3、Maven会自动下载项目所需依赖包,完成后重构项目结构。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第28张图片

    4、按照Maven约定补全项目结构。
        在main目录下面创建resources文件夹,Mark Directory as "Resources Root"。
        在test目录下面创建resources文件夹,Mark Directory as "Test Resources Root"。

    注意:新版本的IDEA,在我们创建resources,会有相应的提示。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第29张图片

    5、删除自动生成App.java和AppTest.java,并编写项目代码即可。

    6、代码编写后,IDEA右侧的Maven Projects折叠窗口,选择Lifecycle下的命令,点击Run按钮(双击命令)运行。

    注意:如果右侧没有Maven Projects折叠窗口,点击View -> Appearance -> 勾选Tool Window Bars。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第30张图片

2.3.2 修改Maven默认的JDK编译环境

    Maven创建的项目默认的JDK编译环境是1.5,可以在pom中使用Maven的编译插件或通过全局配置改变项目的JDK版本。如果不指明版本就容易出现版本不匹配的问题,可能导致编译不通过的问题。

方式一:修改项目级别pom.xml


    UTF-8
    1.8
    1.8

    以上配置只针对当前项目(模块)生效。

方式二:修改maven的settings.xml文件(全局)

    
    jdk-1.8    
        
        true    
        1.8    
        
        
        1.8    
        1.8    
        1.8    
        
 

    以上配置为全局级别,即基于当前maven环境下创建的任何项目(模块)均生效。

2.3.3 创建Maven Web项目

    1、按照之前的步骤创建Maven Web项目。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第31张图片

 创建Maven web项目后目录结构如下:

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第32张图片

    2、手动创建src/main/java,src/mian/resources,src/test/java,src/test/resources等源码目录,先建立Directory(普通目录)。

    注意:新版本IDEA在创建指定名称目录的时候,会直接提示,非常好用。

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第33张图片

     3、右击目录,选择Mark Directory as,将该目录转换为对应的源码目录。其中Sources Root对应src/main/java目录,Test Sources Root对应src/test/java目录,Resources Root对应src/main/resources目录,Test Resources Root对应src/test/resources目录

【Maven从入门到实战教程】第四章 在Eclipse和IDEA中使用Maven_第34张图片

     4、src/main/webapp为存放web的根目录,类似于WebContent目录。但其中的index.jsp和WEB-INF目录下的web.xml因版本过早,需要删除重建。

jsp模板:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


    

Hello Maven!

web.xml模板:



    
        index.jsp
    

    5、部署和测试。
        本地tomcat部署Maven Web项目。
        Maven命令部署Maven Web项目。

你可能感兴趣的:(#,Maven,maven,java,java-ee,intellij-idea,eclipse)