最近在找一些开源web项目素材的时候,才发现不管国内还是国外的开源项目多数都转型成maven构建了。想当年ant构建的时候忍不住学习了ant,现在总不能看着眼馋不会用maven吧,不然那么多的开源项目只是找齐依赖包都可以哭几天了。于是花了一天整了整maven的东东,发现这玩意挺好玩。
我用的是mac os10.5的黑苹果,所幸maven2.2早就内置了,省得我下载建软链接了。mac下使用maven和linux差不多,repositories的默认路径也是~/.m2/repository。需要做的是在上级目录下建一个settings.xml文件。maven对应eclipse有个叫m2eclipse的插件,虽然最近一直在用的idea8.1内置了maven的支持,不过还是要eclipse也能用才是真的爽。毕竟我为了统一mac和xp下的ide的快捷键整了一个多小时!eclipse安装m2eclipse有一点注意就是要先去eclipse的官网安装AJDT,然后安装m2eclipse才不会报错。到这里的话,只要去下载个maven的权威指南看看maven的一些概念,照着做做例子就应该会用了。
不过,既然整了,就不在乎再整个源的私服了。目前私服最猛的就是nexus了,这个东东就是一个web程序,内置了小巧的jetty作为web服务器。我是下了1.4放在/usr/local下了(个人习惯),建了个服务链接,懒得每次都要进来启动。值得注意的是在我本机启动的时候,特别是更新远程索引的时候会OutOfMemory。所以这时候去jetty的conf下编辑wrapper.conf,里面有初始化内存的大小和最大占用内存两项设置,默认是注释的,我按照自己的情况设置并都启用之后不会爆掉了。私服启动默认是有三个proxy的源的,这三个的作用是如果私服本身没有找到指定的project(通常是jar文件),它会跑去这三个源去找。默认远程索引是关闭的,全部开启刷新index过几分钟就能下载完毕了。有了这些索引,就可以对付大多数的jar了,当然我又加了个jboss的,嘿嘿。
要让maven不直接去中心源去找依赖项目,要在settings.xml中加入私服的mirror覆盖默认的。这样使用maven时,它会去私服找依赖,私服本身没有就会偷偷的去proxy找。当然maven个傻鸟是不知道这个过程的,它才不管哪儿弄的,它只管链接私服找到自动下载到本地的库里。这些基础的环境都ok之后,下面就可以享受maven带来的方便了。
我是要看springside3的mini-web,springside的作者很可爱啊,提供了一堆的bat自动执行文件。可惜我是mac,打开一看,我靠,就是不停的call maven命令啊。最初我是试试eclipse的插件,所以选择import进maven项目,但是在默认install的生命周期内少了core的依赖。只好终端进入modules的core执行mvn install生成的springside3-core-3.2.0.jar会安装到本地库。此时m2eclispe再执行mvn package,mini-web的war等就顺利的出现了,那些依赖库也会包含在里面,剩下的就是想怎么整怎么整。springside3的作者们定义了一个parent的pom.xml,这些examples都是共用这个pom定义的插件,全局设置等等,这点和ant挺像。
maven的功能还是很强大的,可以把项目管理流水线的形式约束。减少开发和测试的人工差错和提升效率,当然这是对那些pm而言的,对我来说,使用没有障碍就成了。另外,坛子里有个maven牛人啊,都在出书了,权威指南也是他翻译的,表示感谢。
分享到:
相关推荐
maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装...
Spring 3.0就这么简单源码Maven的jar包001 Spring 3.0就这么简单源码Maven的jar包002
Spring 3.0就这么简单源码Maven的jar包001 Spring 3.0就这么简单源码Maven的jar包002
Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令
maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0
Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven...
apache-maven-3.0.5 apache-maven-3.1.1 apache-maven-3.2.5 apache-maven-3.3.9 apache-maven-3.5.4 apache-maven-3.6.3 apache-maven-3.8.5 每个版本包含4个文件: apache-maven-3.8.5-bin.tar.gz apache-maven-...
maven 工具 maven 工具 maven 工具 maven 工具 maven 工具
maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程
maven
由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
Maven常用命令 Maven Maven学习
Maven最新版是款项目管理和构建自动化工具。Maven包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),...win+R输入cmd,然后输入:mvn -version 输出安装版本就ok了
maven api
maven教程,目录如下: Maven安装配置 Maven启用代理访问 Maven本地资源库 Maven中央存储库 如何从Maven远程存储库下载? Maven添加远程仓库 ...在易百教程网看到的,觉得还不错,就做成了chm笔记本形式
maven3.6maven3.6maven3.6
maven打包 maven打jar包详细步骤
由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在...
Mac的maven安装包apache-maven-3.6.3.zip