Maven的配置和使用(二)
Maven仓库
使用Maven带给我们一个比较直接的好处是管理jar包,这些jar包默认地址是在C:\Users\用户名.m2 目录下,我们来修改下这个地址:
现在自己想建立的仓库地址的路径下新建文件夹,例如我是:D:\java\repository
找到配置文件
修改文件settings.xml:

将<localRepository>D:\java\repository</localRepository>这行修改成自己已经建好的路径
检验下是否已经设置成功:控制台输入 mvn help:system

执行完该命令,查看仓库路径下是否新增了很多文件,如果是,那么maven已经设置完成,可以去体验它的功能了。另外,这个本地仓库可以理解为“缓存”,缓存的就是jar包,开发项目时,如果用maven新建项目,我们添加需要的jar包,它会先从本地仓库检索是否存在,如果没有的话会从远程仓库(中央仓库)中去下载,然后再缓存到之前配置好的本地仓库中。
下面是如何使用eclipse配置maven,然后创建maven项目
1.

按照window->preferences->Maven->Installations,add添加maven的路径,设置配置文件的路径,点击apply
注意:这个时候如果提交完成可能eclipse会报一个错误,具体的错误我忘记了,这个时候可以试试这个方法

刚进来这个设置页面Download repository index updates..这个是勾选的,可以把它去掉(记录一下提醒自己下次遇到有点印象,(●'◡'●))
2.
这个时候还没有完,点击User Settings 进行配置

这个应该也都能看懂是怎么样设置的
注意:我设置完成后然后添加jar包,发现添加完成后没有添加上,着实郁闷,发现这个local repository地址没有设置好,重新设置后问题解决。
------------------------------------------下面可以新建Maven项目了-----------------------------------
使用maven新建项目有两种方式,一种是在eclipse上直接新建,一种是通过控制台新建好项目的一些基本信息并生成一个Eclipse项目文件后导入
第一种:
1.eclipse:File->new->other->Maven

2.选择Maven Project,next,勾选Creat a simple project... next

3.设置项目的相关信息,填写Group id和Artifact id, Version默认,Packaging默认为jar,Name,Description选填,其他的不填 ,点击finish

4.然后会看到新建了这样一个简单的Maven项目

第二种方式:通过控制台新建好项目的一些基本信息并生成一个Eclipse项目文件后导入
1.打开控制台,输入 :
mvn archetype:generate -DgroupId=com.jase.test -DartifactId=MyWebDriver
-Dversion=1.0
generate 用于创建Maven 项目。
DgroupId 指定包的名称。
DartifactId 指定项目名称。
Dversion 指定版本号。
注意:Generating project in Interactive mode 运行到这一步的时候一般会卡住,不要直接跳过(我试过,跳过后会有问题生成eclipse文件的时候),可以等等,也可以使用如下方法:加个参数 -DarchetypeCatalog=internal 让它不要从远程服务器上取catalog
在往下执行,会让你进行一些选择和输入,在这里贴出来:
[INFO] Generating project in Interactive mode (这里会卡一会儿,因为要联网获取项目模板)
[INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: remote -> br.com.ingenieux:elasticbeanstalk-service-webapp-archetype (A Maven Archetype Encompassing RestAssured, Jetty, Jackson, Guice and Jersey for Publishing JAX-RS-based Services on AWS' Elastic Beanstalk Service)
... (这里会自动列出很多项目模板,每种模板前面会有一个数字序号)
336: remote -> org.apache.maven.archetypes:maven-archetype-quickstart (An archetype which contains a sample Maven project.)
...
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 336: (这里根据每个人机器上安装的eclipse插件不同,可能默认的数字不是这个,先不管,直接回车)
Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6: (直接回车)
Define value for property 'groupId': : cnblogs (可暂时先理解成类似package或namespace的名称,通常我们填写组织机构名称缩写)
Define value for property 'artifactId': : maven-hello-world (组件名称,可暂时理解成项目名称)
Define value for property 'version': 1.0-SNAPSHOT: : (版本号,直接回车,默认1.0-SNAPSHOT)
Define value for property 'package': cnblogs: : (打包后的jar文件名,相当于.net中项目最后生成的程序集dll名称)
Confirm properties configuration:
groupId: cnblogs
artifactId: maven-hello-world
version: 1.0-SNAPSHOT
package: cnblogs
Y: : (直接回车确认)
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.1
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: cnblogs
[INFO] Parameter: packageName, Value: cnblogs
[INFO] Parameter: package, Value: cnblogs
[INFO] Parameter: artifactId, Value: maven-hello-world
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS (看到这个,表示项目创建成功!)
[INFO] ------------------------------------------------------------------------
2.完成以上之后,会在当前目录生成MyWebDriver项目,但是不能直接导入eclipse中,需要执行以下命令:
> cd MyWebDriver
MyWebDriver> mvn clean compile
MyWebDriver> mvn eclipse:eclipse
clean 清除项目中的生成结果;compile 编译测试程序。
eclipse:eclipse :生成Eclipse 项目文件。
3.下面就可以通过Eclpse 导入MyWebDriver 项目,启动Eclipse,选择菜单栏File-->Import-->Existing
Projects into Workspace-->点击“Next”,添加本MyWebDriver 目录。


4.这样我们就会看到一个项目建成了

------------------------------------------------------END-----------------------------------------------------
下篇记录下如何引入jar包
Maven的配置和使用(二)的更多相关文章
- Maven pom.xml 全配置(二)不常用配置
Maven pom.xml 全配置(二)不常用配置 这里贴出Maven pom.xml文件中使用率较少的配置参数,如果此篇文档中没有找到你想要的参数,移步Maven pom.xml 全配置(一)常用配 ...
- maven环境配置+eclipse环境配置
一 . (1),下载maven 有点类似于tomcat 解压后就可以用 ,不用安装 (2), 配置环境变量 在系统变量的path 中添加 E:\01Server\maven\bin 注意是bi ...
- MyEclipse中Maven的配置
之前在MyEclipse这个IDE中配置Maven,完成配置后启动Maven时出现-Dmaven.multiModuleProjectDirectory system propery is not s ...
- Eclipse下Maven插件配置
要做一个基于C/S架构的汽车租赁系统,由于在实习期间接触过一些Java和SpringMVC,Spring,Hibernate的东西,所以决定使用这个框架组合来完成这个项目. 首先是Maven的配置,为 ...
- nexus 的使用及maven的配置
一.nexus的安装 1.下载nexus(点解这里) 2.下载后解压文件,将解压后的nexus文件放在你自己想要的地方 3.配置环境变量(和配置java的环境变量一样) 4.安装和启动nexus 由于 ...
- IDEA2017使用Maven方式配置Mybatis-Generator
一,创建Maven项目 至此Maven项目创建完成. 二,在Maven项目的pom.xml中添加mybatis-generator-maven-plugin插件 创建Maven项目后,打开pom.xm ...
- 阿里云Maven配置,Maven仓库配置,Maven镜像配置
阿里云Maven配置,Maven仓库配置,Maven镜像配置 ======================== 蕃薯耀 2018年1月29日 http://www.cnblogs.com/fanshu ...
- 浅谈基于Intellij IDEA Maven的配置与使用
在java开发中,引入jar包的方式从种类上划分,可分为自动导入和手动导入,然而,手动导入繁琐,不是很适合当前开发模式,手动导入也被自动导入所取代. 当前,Maven和Gradle是比较主流的自动导入 ...
- Maven学习第2期---Maven安装配置
一.Maven介绍 1.1 何为Maven Maven这个词可以翻译为"知识的积累",也可以翻译为"专家"或"内行".Maven是一个跨平台 ...
- maven的配置及一些常用命令
一般来说,github上大多的java项目都是使用maven,ant等进行构建的.由于之前没有使用过maven,因此这几天对maven进行了简单的学习.古话说:“温故而知新”,一些命令长时间不使用都会 ...
随机推荐
- SQL SERVER修改函数名引起的问题
1. 问题 今天遇到一个奇怪的问题:使用sp_helptext XXX查询出来的函数定义名竟然跟函数名不同,而sp_helptext实际是查询sys.all_sql_modules这个系统视图的.直接 ...
- 布局TextView和EditText区别,layout_width和lay_weight区别--Android Studio
1. TextView控件是文本表示控件,主要功能是向用户展示文本的内容,它是不可编辑的,如设置标题:EditText控件是编辑文本控件,主要功能是让用户输入文本的内容,它是可以编辑的.每一个控件都有 ...
- SQL Server数据库定时自动备份
SQL Server 数据库定时自动备份[转] 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求 ...
- Sublime Text 3 Plugin Better!
Package Control Cmake ConvertUTF Markdown preview MarkdownEditing Marking Changed Rows
- MySQL主从复制
Mysql主从复制介绍 MySQL支持单向.双向.链式级联.实时.异步复制.在复制过程中,一台服务器充当服务器(Master),而一个或多个其它的服务器充当从服务器(Slave). 复制可以是单向:M ...
- Sicily 1215: 脱离地牢(BFS)
这道题按照题意直接BFS即可,主要要注意题意中的相遇是指两种情况:一种是同时到达同一格子,另一种是在移动时相遇,如Paris在(1,2),而Helen在(1,2),若下一步Paris到达(1,1),而 ...
- overload、overwrite、override
1.重载 overload 函数名一样,参数不同(类型.顺序,与返回值类型无关),重载的函数一般在同一个类中 class A { public: void test() {} void test(in ...
- WebRTC的一个例子
内容引自:一个WebRTC实现获取内网IP的例子(穿透NAT) 网页代码直接复制到下面(如果以上链接被墙,可以直接将下面代码保存文件,然后在浏览器打开即可,不支持IE浏览器): <!doctyp ...
- Linux文件与目录管理
. 代表此层目录 . . 代表上一层目录 - 代表前一个工作目录 ~ 代表"目前用户身份"所在的中文件夹 ~account 代表accoun ...
- nginx windows负载均衡入门
前言 做了几年开发,都是只管码代码,没有参与过项目的部署,为了知识体系更加完整,于是开始学习一下负载均衡.查了一下资料,觉得用nginx +iis 比较简单,于是小试牛刀. 步骤 准备工作 下载ngi ...