maven 安装 配置
2016-02-29 16:54
281 查看
一、下载及安装
1.1 下载maven 3.1.1
先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本文中是C:\Java\maven-3.1.1)
2.1 配置环境变量
系统环境变量里,添加MAVEN_HOME(或M2_HOME),其值为C:\Java\maven-3.1.1,然后PATH环境变量最后附加上";%MAVEN_HOME%\bin"
检测方法:
a) 重新进入命令行(DOS窗口)模式,输入 echo %MAVEN_HOME% 如果能显示 C:\Java\maven-3.1.1 说明环境变量起作用了
b) 输入 mvn -version,正常情况下会显示maven及jdk的版本号
(前提:jdk环境必须先安装好,否则后面无法正常编译项目)
3 理解“仓库”
首次运行完mvn -version后,会在用户目录下创建一个.m2的目录(比如:C:\Users\当前用户名\.m2\),这个目录是maven的“本地仓库”,仓库是maven中一个很重要的概念。
试想一下,我们会在工作中同时创建很多项目,每个项目可能都会引用一些公用的jar包(.NET中是dll文件),一种作法是每个项目里,都复制一份这些依赖的jar包(或dll文件),这样显然不好,相同的文件在硬盘上保存了多份,太占用空间,而且这些依赖的jar包(或dll文件)的版本也不太好管理(比如某个公用的jar包,从1.0升级到2.0,如果所有引用这个jar包的项目都需要更新,必须一个个项目的修改)。
maven的仓库则很好的解决了这些问题,它在每台机器上创建一个本机仓库,把本机上所有maven项目依赖的jar包统一管理起来,而且这些jar包用“坐标”来唯一标识(注:坐标是另一个重要的概念,后面还会讲到,这里只要简单理解成“唯一识别某个jar包文件名、版本号”的标识即可),这样所有maven项目就不需要再象以前那样把jar包复制到lib目录中,整个maven项目看起来十分清爽。
4 配置代理服务器(可选)
maven项目在编译、测试、打包里,会需要从maven的中央仓库(即:maven组织公布在互联网上的一个站点,里面已经收录了目前绝大多数主流的jar包)下载jar包等文件,如果使用代理服务器上网,需要配置代理服务器。
把%MAVEN_HOME%\conf\settings.xml复制一份到本地仓库C:\Users\当前用户名\.m2\下,然后编辑该文件,找到下面这段
View Code
上述这段内容插入在</project>之前即可。
然后在命令行下,输入
mvn exec:exec
即可直接运行,下面是输出:
C:\test\maven-hello-world>mvn exec:exec
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building maven-hello-world 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.2.1:exec (default-cli) @ maven-hello-world ---
Hello World!
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.175s
[INFO] Finished at: Mon Jan 13 22:35:02 CST 2014
[INFO] Final Memory: 6M/111M
[INFO] ------------------------------------------------------------------------
七、项目部署
如果是web项目,使用命令
mvn clean jboss-as:deploy
就能自动将web项目部署到jboss中(前提是jboss web server已经成功启动),因为刚才我们创建的是一个最基本的maven项目,并非web项目,所以执行这条命令,应该会失败,后面会讲如何在eclipse中用插件部署web项目,这里可以先跳过。
另外:
有时候,我们的项目是一个类库,只是封装一些方法供其它项目引用,对于这种项目,我们可以用 mvn clean install 把生成的jar包,安装到“本地仓库”中,这样本机其它项目需要使用该jar包时,只要在pom里配置依赖项即可,不用把jar包复制到当前项目中。
八、eclipse中集成maven
8.1 修改eclipse中使用的maven版本
eclipse自带了maven3.0.4,如果想使用最新的3.1.1,可以在eclipse -> window -> perferences -> Maven -> Installations 里参考下图设置一下
8.2 安装Red Hat JBoss Developer Studio(可选,纯个人喜欢)
eclipse -> help -> Eclipse Marketplace 搜索jboss,找到Red Hat JBoss Developer Studio,安装即可
8.3 创建一个web的maven示例项目
File -> New -> Maven Project -> Next ,在接下来的窗口中会看到一大堆的项目模板,Filter栏里输入“jboss-javaee6-webapp-archetype”,参考下图
然后Next,在接下来的界面中填写groupId之类
然后Finish完成项目创建。整个过程其实跟前面提到的纯手式命令行完全类似,只不过借助于插件,以图形化的方式更友好而已,直接Finish
项目上右击->Run As 就能看到很多Maven的选项,顾名思义,如何选择Maven install,等效于命令行执行mvn clean install,其它几项的含义一看便知,一般来讲Maven test 和 Maven install这二个基本上已经够用,如果还想定义自己的命令,比如 maven clean package,可以选择“6 Maven build...”,会弹出一个界面,如下图,在name输入框填写名称:maven-web-sample-package(名字可以随便写,只要方便自己记忆就行),Goals栏输入clean package
最后点击Run关闭这个窗口,以后可以直接从工具栏调出这个选择,如下图:
实际使用中,发现eclipse与maven之间并非整合得天衣无缝,有时候eclipse中项目图标经常会莫名其妙的出现一些红叉,以下是一些个人经验:
a) 尝试先到Dos命令行窗口,用mvn clean compile(或install)之类的命令试下能否正常编译
b) 如果a) 步骤能正常编译,在回到eclipse中,项目右击->Maven-Update Project ,通常这样就能消除红叉
c) 有时候b)步骤操作完以后,仍然会有红色感叹号或红叉,但是eclipse编译、调试都OK,这就要具体问题具体分析了,可以尝试把Problems面板调出来,逐个分析
d) 以上3个步骤都尝试无效后,最后还可以尝试 Windows -> Preferences -> Validation -> Disable All 把所有验证都关掉
1.1 下载maven 3.1.1
先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本文中是C:\Java\maven-3.1.1)
2.1 配置环境变量
系统环境变量里,添加MAVEN_HOME(或M2_HOME),其值为C:\Java\maven-3.1.1,然后PATH环境变量最后附加上";%MAVEN_HOME%\bin"
检测方法:
a) 重新进入命令行(DOS窗口)模式,输入 echo %MAVEN_HOME% 如果能显示 C:\Java\maven-3.1.1 说明环境变量起作用了
b) 输入 mvn -version,正常情况下会显示maven及jdk的版本号
(前提:jdk环境必须先安装好,否则后面无法正常编译项目)
3 理解“仓库”
首次运行完mvn -version后,会在用户目录下创建一个.m2的目录(比如:C:\Users\当前用户名\.m2\),这个目录是maven的“本地仓库”,仓库是maven中一个很重要的概念。
试想一下,我们会在工作中同时创建很多项目,每个项目可能都会引用一些公用的jar包(.NET中是dll文件),一种作法是每个项目里,都复制一份这些依赖的jar包(或dll文件),这样显然不好,相同的文件在硬盘上保存了多份,太占用空间,而且这些依赖的jar包(或dll文件)的版本也不太好管理(比如某个公用的jar包,从1.0升级到2.0,如果所有引用这个jar包的项目都需要更新,必须一个个项目的修改)。
maven的仓库则很好的解决了这些问题,它在每台机器上创建一个本机仓库,把本机上所有maven项目依赖的jar包统一管理起来,而且这些jar包用“坐标”来唯一标识(注:坐标是另一个重要的概念,后面还会讲到,这里只要简单理解成“唯一识别某个jar包文件名、版本号”的标识即可),这样所有maven项目就不需要再象以前那样把jar包复制到lib目录中,整个maven项目看起来十分清爽。
4 配置代理服务器(可选)
maven项目在编译、测试、打包里,会需要从maven的中央仓库(即:maven组织公布在互联网上的一个站点,里面已经收录了目前绝大多数主流的jar包)下载jar包等文件,如果使用代理服务器上网,需要配置代理服务器。
把%MAVEN_HOME%\conf\settings.xml复制一份到本地仓库C:\Users\当前用户名\.m2\下,然后编辑该文件,找到下面这段
View Code
上述这段内容插入在</project>之前即可。
然后在命令行下,输入
mvn exec:exec
即可直接运行,下面是输出:
C:\test\maven-hello-world>mvn exec:exec
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building maven-hello-world 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.2.1:exec (default-cli) @ maven-hello-world ---
Hello World!
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.175s
[INFO] Finished at: Mon Jan 13 22:35:02 CST 2014
[INFO] Final Memory: 6M/111M
[INFO] ------------------------------------------------------------------------
七、项目部署
如果是web项目,使用命令
mvn clean jboss-as:deploy
就能自动将web项目部署到jboss中(前提是jboss web server已经成功启动),因为刚才我们创建的是一个最基本的maven项目,并非web项目,所以执行这条命令,应该会失败,后面会讲如何在eclipse中用插件部署web项目,这里可以先跳过。
另外:
有时候,我们的项目是一个类库,只是封装一些方法供其它项目引用,对于这种项目,我们可以用 mvn clean install 把生成的jar包,安装到“本地仓库”中,这样本机其它项目需要使用该jar包时,只要在pom里配置依赖项即可,不用把jar包复制到当前项目中。
八、eclipse中集成maven
8.1 修改eclipse中使用的maven版本
eclipse自带了maven3.0.4,如果想使用最新的3.1.1,可以在eclipse -> window -> perferences -> Maven -> Installations 里参考下图设置一下
8.2 安装Red Hat JBoss Developer Studio(可选,纯个人喜欢)
eclipse -> help -> Eclipse Marketplace 搜索jboss,找到Red Hat JBoss Developer Studio,安装即可
8.3 创建一个web的maven示例项目
File -> New -> Maven Project -> Next ,在接下来的窗口中会看到一大堆的项目模板,Filter栏里输入“jboss-javaee6-webapp-archetype”,参考下图
然后Next,在接下来的界面中填写groupId之类
然后Finish完成项目创建。整个过程其实跟前面提到的纯手式命令行完全类似,只不过借助于插件,以图形化的方式更友好而已,直接Finish
项目上右击->Run As 就能看到很多Maven的选项,顾名思义,如何选择Maven install,等效于命令行执行mvn clean install,其它几项的含义一看便知,一般来讲Maven test 和 Maven install这二个基本上已经够用,如果还想定义自己的命令,比如 maven clean package,可以选择“6 Maven build...”,会弹出一个界面,如下图,在name输入框填写名称:maven-web-sample-package(名字可以随便写,只要方便自己记忆就行),Goals栏输入clean package
最后点击Run关闭这个窗口,以后可以直接从工具栏调出这个选择,如下图:
实际使用中,发现eclipse与maven之间并非整合得天衣无缝,有时候eclipse中项目图标经常会莫名其妙的出现一些红叉,以下是一些个人经验:
a) 尝试先到Dos命令行窗口,用mvn clean compile(或install)之类的命令试下能否正常编译
b) 如果a) 步骤能正常编译,在回到eclipse中,项目右击->Maven-Update Project ,通常这样就能消除红叉
c) 有时候b)步骤操作完以后,仍然会有红色感叹号或红叉,但是eclipse编译、调试都OK,这就要具体问题具体分析了,可以尝试把Problems面板调出来,逐个分析
d) 以上3个步骤都尝试无效后,最后还可以尝试 Windows -> Preferences -> Validation -> Disable All 把所有验证都关掉
相关文章推荐
- Linux文件权限详解 文件和目录权限概述
- C#判断上传文件是否是图片,防止木马上传
- iOS 开发之照片框架详解之--AssetsLibrary
- 解决:ofbiz在Eclipse(myEclipse)中调试运行时报错:Can't find bundle for base name cache
- mfc 双缓冲绘制背景
- ViewPager使用及加入动画
- iOS项目目录结构
- 数论基础
- PHP获取POST方式的XML数据
- random模块
- 【LeetCode】309. Best Time to Buy and Sell Stock with Cooldown
- Codeforces Round #340 (Div. 2)E. XOR and Favorite Number 莫队算法
- Linux驱动开发学习的一些必要步骤
- eclipse 远程文件实时同步,eclipse远程部署插件
- 页面传值
- Leangoo:用敏捷开发管理思维做团队协作的SaaS软件
- linux批量删除多级目录下同一格式的文件
- maven 多套环境 配置(开发、测试、预发、正式)
- IMP-00003: ORACLE error 3113 encountered ORA-03113: end-of-file on communication channel
- 数字密码发生器