一、maven安装

1,下载地址:http://maven.apache.org/download.cgi

2,解压maven到:C:\Java\apache-maven-3.5.3,目录可以随意。

3,配置系统环境变量,M2_HOME是maven2版本以后的环境变量。

4,追加Path变量:%M2_HOME%\bin

5,验证环境变量配置

6,设置本地仓储

便于管理,在maven安装的同级目录新建文件夹C:\Java\m2\repository作为本地仓储。

修改C:\Java\apache-maven-3.5.3\conf\settings.xml文件 ,新增一行:

7,如果需要修改默认的中央仓储,需要进行下面的修改。我选择默认,所以省略这一步。

8,初始化本地仓储mvn  help:system。

其实这一步不是必须的,只是为了验证maven能不能正常工作。这个命令是个帮助命令,意思是打印出所有Java系统变量。但是mvn运行help的时候需要用到help的plugin的jar包,还有help的相关文件,所以他就会自动的去下载这些内容到本地仓储。

再次执行这个命令的时候,你会发现它不会再去下载东西了,而是直接打印出结果。

本地仓储中就多了很多下载的jar包和其他内容,大小大概在10M左右。以后随着项目的运用文件会越来越多,要保证本地仓储选的磁盘有足够的空间。

二、eclipse配置maven

1,我们不用那个内置的maven,eclipse→windows→Preferences→Maven→Installations,添加Maven安装目录

2,将 C:\Java\apache-maven-3.5.3\conf\settings.xml 文件拷贝一份到 C:\Java\m2\repository下面作为用户配置文件,conf下面那个是全局配置文件。

然后做如下修改。

3,新建maven工程。

生成了一个下面的结构。

如果修改了pom.xml的内容,需要做下面这一步

编译的时候有有个警告。

原因是这个工程默认的jre是1.5的。解决办法:

打开pom.xml文件,在Properties中加入下面两句话,然后再执行上面的maven--update project

<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>

OK,版本已经正确了。

运行一下,看看结果。

Junit测试结果。

4,需要加载某一个包,可以通过双击pom.xml文件,然后在设计视图中,按下面的步骤,可以搜索。

5,eclipse下查看当前配置下maven Repositories信息。

window-->show view-->other-->maven-->maven repositories

6,要打包程序,执行maven install。

项目被打包到了这里

8,默认的远程仓库是国外的,速度可能会很慢,可以配置国内的镜像,方法如下:

这篇文章有详细解释,我直接转载:http://www.blogjava.net/fancydeepin/archive/2015/06/23/maven-mirror.html

镜像通常可以提供比远程中央仓库更好的服务,提升构件下载的速度。

在 settings.xml(%MAVEN_HOME%\conf\settings.xml)配置文件中找到 <mirrors> 节点,添加如下的配置:

<mirrors>
  <mirror>
    <id>ibiblio</id>
    <mirrorOf>central</mirrorOf>
    <name>mirrors repositories from central</name>
    <url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
  </mirror>
</mirrors>

id:随意,唯一即可; name:随意,只是对镜像的一个描述; url:镜像的地址。
mirrorOf:当 mirrorOf 与仓库的 id 匹配时(maven 默认的远程中央仓库的 id 是 central),所有远程仓库的请求都转成对该镜像配置的
url 的请求。当一个仓库的 id 与多个镜像的 mirrorOf 同时匹配时,则优先选取与仓库 id 完全一致的镜像,如果没有,则按照镜像配置的先
后顺序选取第一个镜像作为服务的提供者。下面几个是常见的配置 mirrorOf 的用法:
<mirrorOf>*</mirrorOf>           匹配所有的远程仓库
<mirrorOf>repo1,repo2</mirrorOf> 匹配 id 为 repo1 和 repo2 的远程仓库(仓库之间使用 "," 隔开)
<mirrorOf>external:*</mirrorOf>  匹配除本地仓库之外的所有其他仓库
<mirrorOf>*,!repo1</mirrorOf>    匹配除 repo1 之外的所有其他仓库(使用 "!" 可将仓库从匹配中排除)

附收藏的几个镜像地址列表

http://maven.antelink.com/content/repositories/central
http://maven.tmatesoft.com/content/groups/public
http://mirrors.ibiblio.org/pub/mirrors/maven2
http://uk.maven.org/maven2

http://maven.aliyun.com/nexus/content/groups/public

9,如何搭建自己公司的maven代理仓储

目前没有需求,可以暂时参考:https://blog.csdn.net/zmx729618/article/details/51566987

10,maven的xml的配置说明

1)profile节点 http://www.cnblogs.com/lzxianren/p/maven-profile.html

2)修改默认的jdk版本

https://www.cnblogs.com/bianqi/p/6819074.html

https://blog.csdn.net/snail_spoor/article/details/53192114

三、其他常见问题

1,编译既存的maven项目,发现找不到依赖的jar包,但是本地仓储里面实际有。

把本地仓储的jar包目录备份到其他的地方,然后删除本地仓储的该jar包的目录。然后用下面的命令重新添加,这个命令是将第三方的jar包导入到了本地仓库。

mvn install:install-file -Dfile=C:\Java\xxxxx-1.0.0.0.0.0..jar -DgroupId=cn.com.mysoft -DartifactId=mysoft -Dversion=1.0.0.0.0.0. -Dpackaging=jar

这时会发现目录被重新生成,并且多出一个maven-metadata-local.xml文件。再到eclipse,发现可以正常编译了。

添加外部第三方jar包的方法,除了上面这种,还有其他的方式,可以参考下面这篇文章。

https://blog.csdn.net/pltuyuhong/article/details/50954017

其他参考:

http://maven.apache.org/guides/introduction/introduction-to-profiles.html(官网)

http://blog.csdn.net/zhf_2016cs/article/details/77479204

http://www.cnblogs.com/fnng/archive/2011/12/02/2272610.html#!comments

Maven 项目构建基础(推荐) https://zhuanlan.zhihu.com/p/28371336

maven安装及与eclipse集成的更多相关文章

  1. maven系列之一maven安装和与IDE集成

    第一部分:maven的基本信息和安装,配置  maven是一个项目构建和管理的工具,提供了帮助管理 构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等 ...

  2. maven安装和与IDE集成

    第一部分:maven的基本信息和安装,配置  maven是一个项目构建和管理的工具,提供了帮助管理 构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等 ...

  3. maven安装与在eclipse中配置

    需要准备 eclipse maven压缩包 : http://maven.apache.org/download.cgi 1 解压maven压缩包 2 在系统变量中新建变量MAVEN_HOME,值为 ...

  4. maven安装配置以及eclipse的配置

    一.需要准备的东西 JDK Eclipse Maven程序包 二.下载与安装 前往https://maven.apache.org/download.cgi下载最新版的Maven程序: 将文件解压到D ...

  5. eclipse集成jetty开发web项目(不采用maven方式)

    以前开发过程部署项目都是采用tomcat,偶然发现jetty,所以试了下,挺方便的,直切主题. 1.下载jetty,楼主使用的jetty8,地址http://download.eclipse.org/ ...

  6. maven之一:maven安装和eclipse集成

    maven作为一个项目构建工具,在开发的过程中很受欢迎,可以帮助管理项目中的bao依赖问题,另外它的很多功能都极大的减少了开发的难度,下面来介绍maven的安装及与eclipse的集成. maven的 ...

  7. maven安装和eclipse集成

    maven作为一个项目构建工具,在开发的过程中很受欢迎,可以帮助管理项目中的bao依赖问题,另外它的很多功能都极大的减少了开发的难度,下面来介绍maven的安装及与eclipse的集成. maven的 ...

  8. maven(一),maven3.5.3的windows安装及Eclipse集成

    maven用了好长时间,需要系统的学习一下.maven ,是一个项目构建的工具,是一个项目管理和综合工具,具有项目生命周期管理功能. maven现在到了3.5.3,就以这个版本进行. 一.下载mave ...

  9. maven安装和eclipse集成遇到的问题

    修改完maven的位置之后,修改配置文件conf/settings.xml <localRepository>E:/apache-maven-3.3.1-bin/mvn/mvnreposi ...

随机推荐

  1. 一次线上FullGC问题记录

    ​ 标题采自:英雄联盟-瑞文:断剑重铸之日,骑士归来之时! 断剑 ​ 前两天早上在挤地铁的时候看到小组群里,主管发了好多消息,打开来一看,说是XX项目自从22号发版后,每天晚上就疯狂Full GC,让 ...

  2. MongoDB学习路线

    转载博客: 1.MongoDB学习笔记(一)MongoDB概述和安装 http://www.cnblogs.com/wupeiqi/archive/2013/05/12/3074478.html 2. ...

  3. Gradle 同步 已经开始 Gradle sync started

    Gradle 同步 已经开始 Gradle sync started 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 31313 ...

  4. 潭州课堂25班:Ph201805201 爬虫高级 第七课 sclapy 框架 爬前程网 (课堂笔)

    定时对该网页数据采集,所以每次只爬第一个页面就可以, 创建工程 scrapy startproject qianchen 创建运行文件 cd qianchenscrapy genspider qian ...

  5. C语言中常用的字符串操作函数

    程序开头要声明 #include <string.h> 函数名: stpcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char ...

  6. BZOJ4313 : 三维积木

    不妨设$R$是唯一可以看到的颜色,考虑一维序列的情况. 设$f[i][j][k][x][y]$表示考虑了前$i$个位置,第$i$个位置的高度是$j$,最高高度是$k$,已经用了$x$个$R$,$y$个 ...

  7. Mysql启动失败

    错误提示: 服务名无效 错误原因: mysql服务没有安装. 解决方法: 管理员的权限运行cmd 用dos命令进入到mysql安装目录下再进入到bin目录下 运行mysqld -install命令

  8. python测试开发django-49.allow_tags和mark_safe

    前言 前面一篇使用allow_tags方法可以在xadmin的后台页面中插入html代码,在2.x版本ModelAdmin里面删除了allow_tags属性的支持,使用mark_safe函数代替 al ...

  9. [Android Pro] Android P版本 新功能介绍和兼容性处理(三)Android Studio 3.0 ~ 3.2 其他特性

    cp : https://blog.csdn.net/yi_master/article/details/80067198 1:JAVA8特性支持 1)Base64.java 在升级到as3.0之后, ...

  10. Go语言之高级篇beego框架之请求数据处理

    1.Controller中数据参数处理 获取参数:我们经常需要获取用户传递的数据,包括 Get.POST 等方式的请求,beego 里面会自动解析这些数据,你可以通过如下方式获取数据: GetStri ...