论坛首页 Java企业应用论坛

maven2 起步

浏览 12551 次
锁定老帖子 主题:maven2 起步
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-12-02  
    相信maven1 大家都已经很熟悉了,具体maven能做什么,就不详细说了。个人觉得maven在开源项目中用的还是比较多的,公司内部,就不太清楚了。我以前的公司用过一段时间,不过后来就没有下文了。
    与maven1 相比,maven2可算是几乎重写了,不过从速度来说应该更快。
    主要的几个新特性包括:(详细参考http://www.ibm.com/developerworks/cn/opensource/os-maven2/index.html)
    1. 更快、更简单
        速度方面可以比上ant了
    2. 更少的配置文件
        现在的配置文件只剩下了settings.xml和pom.xml了。
    3.  Plugin语言更换
        语言开始支持java,BeanShell和ant
    4.  提供了预定义的模版
        这点是最有帮助的,用户可以自己定义自己的项目模版了,就像用appfuse一样生成项目结构
    5. 生命周期的引入
         在Maven2中有了明确的生命周期概念,而且都提供与之对应的命令,使得项目构建更加清晰明了。
    6.  新增Dependency Scope   
         这点也比较重要,有些用于test范围的包,可以不用加入依赖了
    7.  传递依赖,简化依赖管理
        这是最为方便的,可以省了很多配置。如a 依赖 b,b 依赖c  默认 a也会依赖 c。但是也会带来隐患,如版本冲突。不过maven 也已经考虑到了,可以使用exclusions来排除相应的重复依赖

介绍了那么多,现在切入正题,开始maven2 之旅:
首些下载需要的工具:
maven2: http://maven.apache.org/download.html 最主要的
maven-proxy:用来代理repository,使用本地库代替maven2的远程库
            http://maven-proxy.codehaus.org/
continuum:一个不错的持续整合工具,用于自动build。支持ant,maven
http://maven.apache.org/continuum/
svn:版本控制工具相信都已经配置了。
maven 用于eclipse的插件 ,在maven主站有下载,不错的插件。当然idea也有相应的插件
最后,http,服务器是必不可少的。用于内部开发使用。
可以使用apache ,或者jetty  http://www.mortbay.org/

安装:
    安装maven2很简单,把下载来的maven包解开就行了。(目前我的配置都在win2003上,还没有应用于linux,所有所有的配置都针对 windows).增加相应的环境变量m2_home=maven2的安装目录,不要忘了设置java_home的目录。另外在path中增加% m2_home%\bin;可以直接在命令行下面使用mvn。
其他工具的安装在后续的文章会介绍。

开始第一个mvean2项目:
  mvn archetype:create -DgroupId=com.mycompany.app \
                   -DartifactId=my-app
  简单介绍一下 groupId相当于你的组织,如同org.springframework,会转化为相应得本地路径 artifactId,你主要的jar包名称,也就是你要打成的jar 名称。
编译应用资源
    mvn complile
        编译相应的jave 文件
编译测试类以及运行测试类
    mvn test
       运行测试类
如果只想编译test,执行
    mvn test-compile
打包和安装你的本地库
打包:
    mvn package
安装:
    mvn install
创建web site
    mvn site
清除所有输出
    mvn clean
创建相关的ide文件
    mvn idea:idea        或者    mvn eclipse:eclipse

    顺便说一下,maven2 是有生命周期这一概念的,也就是说如果你执行package,相应的以前步骤,如compile,test等都会自动执行。
刚开始执行会比较慢,需要从maven2远程库中下载所有的文件到本地。如果你的本地没有相应的依赖包,则每次maven都会去远程下载,所以配置一个镜像库就比较重要了。
    另外介绍一下主要的参考资料:
    mavn2 主站:主要的pom和settings.xml参考资料
    Better Builds with Maven     http://www.mergere.com/m2book_download.jsp
    不错的书,主要通过例子介绍。可惜都是E文的,花点时间还是值得的。
    下一个主题,会说一下maven2的主要配置。


   发表时间:2007-08-22  
您写的关于MAVEN的文章都很不错,我受益匪浅。可是我重装系统之后用MAVEN创建项目时,报BUILD ERROR错误:
The pulgin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or valid version could be found

但我的MAVEN确实配置成功了,JDK什么都配了,这是为什么呢?我执行mvn -v 是能显示版本号的!请帮忙吧!~~谢谢!~
0 请登录后投票
   发表时间:2007-08-23  
MAVEN2的确好用,现在公司就用这个
友情提示一下,MAVEN2运行打包的时候,如果开着卡巴,会有几十秒的无响应时间,所以建议关掉卡巴再使用MAVEN2
0 请登录后投票
   发表时间:2007-08-23  
之前小弟也研究过一段时间MAVEN,当时可谓沉醉其中,感觉一些概念和技术真的不错,研究到可以上手的时候就没有下文了,因为所做的项目中用不到这东西,有空的时候作为纯技术的东西再了解下,毕竟是先进的技术,开拓一下视野也好
0 请登录后投票
   发表时间:2007-08-23  
JavaVision 写道
不错,昨天下班了看了一晚上maven

This book is very good. But I think It introduced a lot of advanced functions after the third chapter.
0 请登录后投票
   发表时间:2007-08-30  
请问如何设置主类呢?
我现在每次打完包还得手动修改MANIFEST.MF文件
我用的m2eclipse插件,没找到在哪设置MANIFEST.MF
0 请登录后投票
   发表时间:2007-08-30  
hiseh 写道
请问如何设置主类呢?
我现在每次打完包还得手动修改MANIFEST.MF文件
我用的m2eclipse插件,没找到在哪设置MANIFEST.MF


在pom里面配置阿。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics