上周看到springside里关于maven的介绍,决定开始使用maven。期间可谓历经磨难啊,(呜呜!这方面的中英文资料都相当的少,尤其是关于maven2的),下面把我的经历简列如下:
1:资料
强烈推荐张俊写的《用Maven简化你的项目管理》-http://www.blogjava.net/pesome/archive/2006/09/21/71045.html,看完这篇文章你基本就对maven有了相当的了解。IBM开发者网站上也有几篇好文章,《项目管理: Maven 让事情变得简单》(可惜讲得是maven1的内容,不过对了解maven的基本原理很有帮助)-http://www-128.ibm.com/developerworks/cn/java/j-maven/;要了解maven2于maven1的区别,可以看《Maven2 的新特性》-http://www-128.ibm.com/developerworks/cn/opensource/os-maven2/,还有《在 Eclipse 中利用 Maven》等等。当然maven的官方网-http://maven.apache.org/,E文好的自然是少不了要去遛达下的。除此之外如果你想对maven有个系统的学习的话,那么可以到http://www.mergere.com/m2book_download.jsp,去下载一本书《Better Builds with Maven》,内容非常新,非常系统,而且还是免费的!!(可惜现在太忙,如果有时间,真想找几个人一起翻译下,毕竟现在maven的中文资料实在是太少了)。
2:实战
(1)关于Maven 2.x Plug-in for Eclipse插件的bug
我用的是eclipse,所以下了Maven 2.x Plug-in for Eclipse-http://maven.apache.org/eclipse-plugin.html。这个插件的使用非常简单,要了解基本操作可以看官方制作的demo Flash-http://m2eclipse.codehaus.org/Maven_2.0_Plugin_for_Eclipse.html。但是在使用0.09版的插件时碰到了头疼的问题,在Preferences里,无法打开maven2的preference page,出现“org.maven.ide.eclipse was unable to load class...”(具体见附件1)。工程里试验“Ennable”功能出现“The chosen opeartion is not currently available.”(具体见附件2)。而且很奇怪的是我试验的几台机器中,有两台可以,其它都不行(这是造成我无法迅速解决问题的很大原因)。接连排除了防火墙,杀毒软件,eclipse版本,jdk版本等后,还是没能找到原因。绝望中,我决定不用插件,直接用命令行,在一台插件不行的机器上用命令 mvn tese 随便下了些jar后,突然发现插件居然能用啦。经过彻查,这才发现原来都是默认的.m2目录惹得祸-这是乎是插件的bug,由于插件默认要求在${user.home}/要有.m2的目录(是放jar的仓库目录),插件自己居然不能初始化本地仓库目录;而且后面发现Preference里设置的Local repository folder根本不起作用!(由于命令mvn test 会初始化建立.m2目录,所以插件又能用了。)希望Maven 2.x Plug-in for Eclipse能够尽快更新,修复bug,免得打击maven粉丝的信心啊!当然目前你只好自己建仓库目录啦。除了前面说的利用maven命令方法(要下载maven,挺麻烦),最简单的是手动建。但是这里要注意,因为.m2里“.”是特殊符号,windows里不容许文件夹及文件的命名以此开头,因此要用dos命令:md .m2才行。
(2)关于建私服
如果你要建私服,那么要注意目录结构及文件的命名。比如有个依赖类包pom.xml里描述如下:
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>1.0</version>
那么服务器里放依赖类包的仓库目录下,应该这样建test\test\1.0\test-1.0.jar。
注意其中“-1.0”必不可少。而描述文件.pom及验证码文件.sha1,如果你嫌烦,可以不建,不会影响包的下载。
以上是我的一些拙见,但愿有人能够受益!
分享到:
相关推荐
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-...
apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-...
apache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9....
apache-maven-3.8.8.zip压缩包内容: apache-maven-3.8.8-bin.tar.gz apache-maven-3.8.8-bin.zip apache-maven-3.8.8-src.tar.gz apache-maven-3.8.8-src.zip
apache-maven-3.9.6-bin
maven资源 apache-maven-3.3.9-bin.zip
apache-maven-3.6.3-bin.zip maven3,6版本, 可用apache-maven-3.6.3-bin.zip maven3,6版本, 可用apache-maven-3.6.3-bin.zip maven3,6版本, 可用apache-maven-3.6.3-bin.zip maven3,6版本, 可用apache-maven-3.6.3-...
maven-jar-plugin-3.1.1.jar
maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的jdk版本编译的话,它就会用maven-compiler-plugin默认的jdk版本来进行处理,这样就容易出现版本不匹配,以至于可能导致编译不通过的问题。...
Maven使用tomcat8-maven-plugin插件
Apache Maven 是一个软件项目管理和理解工具。基于项目对象模型 (POM) 的概念,Maven 可以从一条中央信息中管理项目的构建、报告和文档。 压缩包内容: apache-maven-3.8.1-bin.zip、 ...apache-maven-3.8.1-src.tar.gz
maven-shared-utils-3.2.1.jar
maven-antrun-plugin-3.0.0.jar
apache-maven-3.6.1-bin
maven-install-plugin-2.4.jar
maven-repository-metadata-3.0.jar
apache-maven-3.9.4.zip压缩包内容: apache-maven-3.9.4-bin.tar.gz apache-maven-3.9.4-bin.zip apache-maven-3.9.4-src.tar.gz apache-maven-3.9.4-src.zip
maven-resources-plugin-2.4.1.jar