Maven
Maven介绍
- 管理下载jar包的仓库
- Maven——帮你规范整个组织的构建系统。不仅如此,它还有依赖管理、自动生成项目站点等超酷的特性。每天都有数以万计的开发者在访问中央仓库以获取他们需要的依赖。
Maven是跨平台的项目管理工具,主要服务于基于java平台的项目构建、依赖管理和项目信息管理。
Maven依赖jar包使用的网站
www.maven.org是maven的中央仓库,搜索一个框架后,找到某个版本,可以下载jar,国外的,下载慢。
- 比如搜索mysql.mysql
- https://maven.aliyun.com/mvn/search
- 国内的maven中央仓库,访问速度快
- https://mvnrepository.com/
- 查看框架的下载量,添加依赖的代码也在这里找
Maven作用
- maven有个服务器,服务器中放了大量的jar
- maven客户端,通过客户端从maven服务器上下载jar
Maven项目创建
- eclipse自动补全设置
- 最简单的修改方式是:Windows——>Preferences——>Java—>Editor—>Content Asist,在Auto activation triggers for Java后面的文本框里只有一个“.”。现在你将其改为“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”即可
- Maven包http://maven.apache.org/download.cgi 下载地址
apache-maven-3.3.9.rar 直接解压使用
- 修改conf/setting.xml中的localRepository
- 这是你添加依赖后jar包下载的位置
- 配置环境变量
- maven/bin目录加入到系统环境变量path中,这样在任何地方就可以使用mvn命令
- 重启dos,path配置才生效。
- 输入mvn -version ,查看是否成功配置
- 配置使用jdk
- Windows->preferences->Java->InstalledJREs
- 编辑为jdk的目录
- 有极个别电脑要指向jre
- 配置maven
- Windows->preferences->Maven->User Setting
- 引入解压后的maven, ../apache-maven-3.3.9/conf/seetting.xml
- 两个都设置,后自动找到setting.xml中你设置的jar仓库
- Windows->preferences->Maven->User Setting
- 新建项目
- file->new Maven Project->
- 选择internal maven-archetype-quickstart,next
- Gropu id 公司名
- Artifact id项目名
- file->new Maven Project->
- 项目出现pom.xml表示成功
Maven导入jar包
添加阿里云maven仓库有的jar包:依赖jackson框架并使用
- jackson框架主要是解析Java对象为json字符串,让前台vue解析json字符串渲染页面
1.打开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>com.tedu</groupId>
<artifactId>maven01</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>maven01</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java
添加依赖,导入jar包
在https://mvnrepository.com/里面找到对象的依赖代码
保存之后自动下载,对应的jar包就会下载到设置的maven仓库中-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<!--
<dependency>
<groupId>com.fasterxml.jackson.core</groupId> 本地maven仓库里的公司
<artifactId>jackson-databind</artifactId>
<version>2.12.1</version>
</dependency>
-->
</dependencies>
</project>
2.新建Item.java
package com.tedu.maven01;
public class Item {
Integer id;
String name;
public Item(Integer id, String name) {
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
3.App.java
package com.tedu.maven01;
import com.fasterxml.jackson.databind.ObjectMapper;
/**
* Hello world!
*/
public class App
{
public static void main( String[] args )
{
try {
System.out.println( "Hello World!" );
Item item = new Item(1,"mate10");
//创建把商品分类对象转成json字符串的对象
ObjectMapper objectMapper = new ObjectMapper();
//把商品分类对象转成json
String jsonStr = objectMapper.writeValueAsString(item);
System.out.println(jsonStr);
} catch (Exception e) {
// TODO: handle exception
}
}
}
手动添加阿里云maven仓库没有的jar包:pinyin4j-2.5.0.jar
1.打开xml文件,添加依赖
<dependency>
<groupId>net.sourceforge.pinyin4j</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.0</version>
</dependency>
2.复制jar包到仓库中
- E:\ssm\apache-maven-3.3.9\repositorys\net\sourceforge\pinyin4j\pinyin4j\2.5.0
pinyin4j-2.5.0.jar
3.重新加载maven
- 右键,maven,update project,选中force update of…, OK
4.转换为拼音
package com.tedu.maven02;
import java.util.Arrays;
import net.sourceforge.pinyin4j.PinyinHelper;
/**
* Hello world!
*
*/
public class App
{
public static void main( String[] args )
{
System.out.println( "Hello World!" );
//静态方法,直接使用,返回字符串
String[] str= PinyinHelper.toHanyuPinyinStringArray('虎');
System.out.println(Arrays.toString(str)); //[hu3, hu4]
}
}
Maven项目打包成jar包
- maven项目右键,Run as ,maven install
可以再两个地方找到生成的jar包
在项目中添加同一jar包,不同版本,依赖 代码中的最先依赖(代码的优先顺序)
- 所有人商量之后版本统一,设定一个父类来依赖需要使用的 所有的 jar包
其它文件依赖这个parent形成的jar包即可
新建Parent的Maven项目
- Parent添加jackson依赖,Overview中jar替换为pom,maven install打包成pom包(告诉别人你可以继承我的依赖了)
- 新建Item的Maven项目
- Pom.xml里面Overview中添加父亲Parent,继承Parent的依赖
- 打包为jar包
- 新建User的Maven项目
- Pom.xml里面Overview添加父亲Parent,继承Parent的依赖
- 打包为jar包
- 新建WWW的Maven项目
- Pom.xml里面Dependencies,add添加Item和User的jar包依赖
- WWW的Pom.xml的Dependency Hierarchy能看到两个依赖Item和User依赖版本一致,成功