初识maven

1.初识Maven

1.1.Maven安装

1.1.1.安装准备

(1)安装jdk1.8或以上版本

(2)下载Maven

地址:http://maven.apache.org/download.html

下载地址:https://archive.apache.org/dist/maven/maven-3/3.6.0/binaries/

版本:Maven3.6

(3)安装Maven

解压到相应目录即可(无中文路径)

1.1.2.Maven安装目录分析

在这里插入图片描述

bin:含有mvn运行的脚本

boot:含有plexus-classworlds类加载器框架

conf:含有settings.xml配置文件

lib:含有Maven运行时所需要的java类库

LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍

1.1.3.Maven的环境变量

(1)设置MAVEN_HOME环境变量

升级时只需要下载最新版本,解压缩重新设置MAVEN_HOME环境变量即可

(2)设置MAVEN_OPTS环境变量

-Xms128m -Xmx512m

(3)配置用户范围的settings.xml

%MAVEN_HOME%/conf/settings.xml 全局的

~/.m2/settings.xml 单个用户的

(4)设置MAVEN_HOME环境变量,把maven的解压后的路径添加为变量值

在这里插入图片描述

设置Path环境变量,把 %MAVEN_HOME%\bin 添加到Path的变量值末尾,与前面的内容用 ; 隔开,如图:

在这里插入图片描述

配置MAVEN_OPTS运行环境变量大小,(解决大型项目内存溢出的问题)

(找到命令改参数治标不治本)

-Xms128m  -Xmx512m

在这里插入图片描述

验证配置是否完成

在这里插入图片描述

1.2.Maven的第一个项目

1.2.1.按照约定创建Maven项目目录

src/main/java —— 存放项目的.java文件 

src/main/resources —— 存放项目资源文件,如spring, mybatis配置文件 

src/test/java —— 存放所有测试.java文件,如JUnit测试类 

src/test/resources —— 测试资源文件 

target —— 项目输出位置 

pom.xml 

### 1.2.2.在项目Hello根目录建立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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.tx.maven</groupId>
  <artifactId>Hello</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Hello</name>
  
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.9</version>
			<scope>test</scope>
		</dependency>		
		
	</dependencies>
</project>

1.2.3.创建Hello.java文件

在src/main/java/cn/tx/maven目录下新建文件Hello.java

package cn.tx.maven;
public class Hello {
	public String sayHello(String name){
		return "Hello "+name+"!";
	}
}

1.2.5.进行maven的项目操作

  1. 打开cmd命令行,进入Hello项目根目录执行 mvn compile命令,查看根目录变化
  2. cmd 中继续录入mvn clean命令,然后再次查看根目录变化
  3. cmd 中录入 mvn clean compile命令, 查看根目录变化
  4. cmd 中录入 mvn clean test命令,查看根目录变化
  5. cmd 中录入 mvn clean package命令,查看根目录变化
  6. cmd 中录入 mvn clean install 查看仓库会把项目安装到仓库里

1.3.Maven的第二个项目

1.3.1.按照约定创建Maven项目目录

HelloFriend

 --src

 -----main

 ----------java

 ----------resources

 -----test

 ---------java

 ---------resources

 --pom.xml

1.3.2.在项目HelloFriend根目录建立pom.xml

在项目HelloFriend根目录建立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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.tx.maven</groupId>
  <artifactId>HelloFriend</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>HelloFriend</name>
  
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.9</version>
			<scope>test</scope>
		</dependency>		
		
		<dependency>
			<groupId>cn.tx.maven</groupId>
			<artifactId>Hello</artifactId>
			<version>0.0.1-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>		
		
	</dependencies>
</project>

1.3.3.创建HelloFriend.java文件

在src/main/java/cn/tx/maven目录下新建文件HelloFriend.java

package cn.tx.maven;

import cn.tx.maven.Hello;

public class HelloFriend {

	public String sayHelloToFriend(String name){
		
		Hello hello = new Hello();
		String str = hello.sayHello(name)+" I am "+this.getMyName();
		System.out.println(str);
		return str;
	}
	
	public String getMyName(){
		return "John";
	}

}

1.3.4.创建HelloFriendTest.java文件

在/src/test/java/cn/tx/maven目录下新建测试文件HelloFriendTest.java

package cn.tx.maven;

import static junit.framework.Assert.assertEquals;

import org.junit.Test;

import cn.tx.maven.Hello;


public class HelloFriendTest {
	@Test
	public void tesHelloFriend(){
		
		HelloFriend helloFriend = new HelloFriend();
		String results = helloFriend.sayHelloToFriend("zhangsan");
		assertEquals("Hello zhangsan! I am John",results);		

	}
}

1.3.5.测试打包HelloFriend项目

在HelloFriend目录下执行命令mvn package

在这里插入图片描述

系统报错提示:Could not find artifact cn.tx.maven:Hello:jar:0.0.1-SNAPSHOT,表示无法找到HelloFriend所依赖的Hello 0.0.1-SNAPSHOT.jar

故此我们需要重新构建第一个项目Hello并安装到数据仓库,在命令行Hello根目录下执行mvn clean install

在这里插入图片描述

对Hello项目进行清理并安装后,对HelloFriend项目再次进行打包

在这里插入图片描述

可以看到本次打包成功,说明HelloFriend项目已经可以加载Hello项目所打包的jar包

1.4.Maven仓库配置

1.4.1.Maven仓库概念

(1)何为Maven仓库?

用来统一存储所有Maven共享构建的位置就是仓库

(2)Maven仓库布局

根据Maven坐标定义每个构建在仓库中唯一存储路径

groupId/artifactId/version/artifactId-version.packaging

(3)仓库的分类

本地仓库

~/.m2/repository/ 可修改

每个用户只有一个本地仓库

(4)远程仓库

中央仓库:Maven默认的远程仓库

http://repo1.maven.org/maven2

私服:是一种特殊的远程仓库,它是架设在局域网内的仓库

阿里云

华为云

腾讯云

1.4.2.Maven本地仓库配置

  1. 全局本地仓库(所有操作系统用户均影响)

%MAVEN_HOME%\conf\settings.xml文件,修改该文件会影响所有使用该Maven的用户的本地仓库,例如:

在这里插入图片描述

  1. 用户本地仓库(仅影响使用该配置文件的用户或程序)

该文件可以在任意目录,例如:

在这里插入图片描述

  1. 修改配置文件设置Maven本地仓库(以全局设置为例)

编辑D:\TOOLS\maven\apache-maven-3.5.4\conf\settings.xml文件

找到如下位置:

在这里插入图片描述

修改为:

在这里插入图片描述

保存退出即可

以上配置表示所有使用该Maven的程序或用户,如未单独配置,则默认加载以上目录的本地库文件;

Ps:课程提供本地库文件为shoprapository.zip,如果遇到打包不成功,jar包无法下载等情况,优先进行本地库配置,避免因网络导致的maven依赖包问题.

1.5.IDEA整合Maven项目

1.5.1.IDEA的Maven全局配置

启动IDEA后找到Settings

在这里插入图片描述

在这里插入图片描述
以上设置完成表示在本idea上,所有项目如未对Maven的配置进行单独配置,则默认均使用该Maven版本和本地库设置;

1.5.2.IDEA创建Maven的Java项目

在这里插入图片描述
在这里插入图片描述

至此Maven的Java项目创建完成

在这里插入图片描述

测试Maven的jar包引入

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

以上,在IDEA上使用Maven进行Java项目的创建及测试已完成!

1.5.3.IDEA创建Maven的Javaweb项目

在这里插入图片描述
在这里插入图片描述
配置完毕后会进行web项目的初始化,初始化过程取决于本地库是否已生成及网络情况,推荐使用课程提供的Maven本地库

如果创建项目速度非常慢,并且在Generating project in Batch mode卡住,则进行全局设置如下:

-DarchetypeCatalog=local

在这里插入图片描述

在这里插入图片描述

以上web项目则创建成功,接下来需要进行一些配置来确定web项目可以正常运行

在这里插入图片描述

在这里插入图片描述

添加war包的方法:

在这里插入图片描述

配置web服务器

在这里插入图片描述

添加本地tomcat配置

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

​ 测试项目运行

在这里插入图片描述

在这里插入图片描述

至此,在IDEA上使用Maven配置的Java web工程已经完成配置

1.5.4.IDEA导入既有Maven项目

以导入刚才的Maven项目的例子做示范:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
导入引入依赖Hello项目的HelloFriend项目,可以看到Hello项目已经被打成jar包引用到HelloFriend的Maven依赖中

在这里插入图片描述

1.6.Maven项目视图

Maven项目视图主要用于查看该maven项目的各项属性,同时也可以进行一些常见的maven的操作,比如打包,清理,测试等等;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值