`
juvenshun
  • 浏览: 1588563 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论
文章列表
使用Maven进行开发的时候,比较常见的一个问题就是如何寻找我要的依赖,比如说,我想要使用activeMQ,可是我不知道groupId,artifactId,和合适的version。怎么办呢?本文介绍几个提供maven仓库搜索服务的站点。   1. http://repository.sonatype.org/index.html 该服务器是由Sonatype 提供的,Sonatype是由Maven支付Jaso Van Zyl创立的致力于maven,Nexus ,m2eclipse 等产品的公司。该仓库搜索的后台使用了Nexus,Nexus是目前为止最为强大的Maven仓库管理器,而且, ...
之前写过篇文章:Maven生命周期详解 。说是详解,也就寥寥几百字,怎可能多详细?现在好了,Maven权威指南中有一章专门介绍生命周期,现在已经翻译完毕,请看:http://www.sonatype.com/book/reference_zh/lifecycle.html 。   大致内容如下: 什么是生命周期 解释三种生命周期 clean, default, site 插件目标(plugin goal)绑定生命周期阶段(lifecycle phase) 各种打包类型(JAR, WAR, POM ... )绑定的插件目标 通用生命周期的介绍,包括Process Resources, Compi ...
首先大概翻译一段来自sonatype blog 的博文:   -~-~—~-~-~-~-~ 如何诊断在Maven构建过程中碰到的问题?可以看一下这些手段:   1. 你正运行什么版本的Maven? 如果不是Maven 2.0.9或以上,你需要升级。 Maven 2.0.9是第一个设置了核心插件 ...
最近开始新工作,较忙,翻译有点慢了,大家见谅。 Sonatype的网站上周末在中国连接速度有点问题,不过是暂时性的,现在恢复了。   转入正题,第九章:项目对象模型,也是本书第二部分“Maven参考”的第一章,现已完成,我自己做过简单的review,肯定还有问题,比如说错别字,读者若有时间,在我们的讨论组:http://groups.google.com/ 留言,将不甚感激。   本章内容很丰富,详细介绍了POM,包括什么是超级POM,什么是有效POM。在Maven中版本是如何管理的,SNAPSHOT是什么东西。关于项目依赖,这里也做了最详细的解释,传递性依赖是什么?为什么我们要给依赖加scop ...
这里整理了一段MSN群中网友Arthas的精彩讲解:   来自群聊天记录 Alex_Zhang 说: 我觉得maven比起ant来说还是差距很大,至少在灵活性上。maven非要靠那些插件 Juven 说: 是的,如果自定义程度非常高,ant更灵活 Alex_Zhang 说 那为什么还要用maven?是否因为它有自动生成站点,自动下载依赖包,版本管理等功能?难道就这些吗?中央库,有什么意义,就为了统一管理JAR包?难道每次打包,要让客户去下载jar包,才好? 还有就是复制一个文件到另外一个文件夹都要去找个插件?这是不是有些小题大做了? Juven 说: Alex:如 ...
"Maven: The Definitive Guide"一书的商业模式十分有趣,首先你可以在线免费阅读或者下载PDF,地址为:http://www.sonatype.com/book 。而现在,它又推出了纸质的书本,你可以在Amazon上购买 。还有一点有趣的地方是,本书的所有版税全部捐献出来用来植树了。因此,这本书相当环保,不是为了盈利的,主要是为了推广Maven。   关于本书的内容,绝对是Maven目前最权威的文档,作者都是领域的专家,以及Maven核心代码的提交者。 第一部分是实战,通过很多例子帮助初学者认识Maven。 第二部分是参考,很多高级的特性和底层的概念这 ...
之前在公司做的一个培训,主题是介绍持续集成(CI)和Maven的核心概念,这里分享给大家。   大概内容为: CI实践逐条详解:维护单独的SVN仓库,自动化构建,频繁提交…… Maven核心介绍:一组通用的用户接口,一组预定义的约定配置,一个POM…… CI阶段详解:持续编译,持续测试,持续数据库集成……   本来想写把Hudson的介绍也加进来,无奈经验和时间的有限,暂时搁置了,见谅,不过看了这份资料,Hudson是用来干嘛的这个问题,应该已经很清楚了。
《Maven权威指南》第六章. 一个多模块项目 ,以及第七章. 多模块企业级项目 都已翻译完毕。   一个现实生活中的Maven项目只有一个POM文件,那是不现实的。典型的项目会和数据库交互,和Web Service交互,有自己的业务逻辑,暴露Web Service,有命令行应用程序,有Web应用程序……这个时候,必须分一下模块,松散耦合,清晰关联,增加重用等等好处不用多说。这两章内容,就是介绍怎样使用Maven的模块集成及聚合相关功能的。   看一看多模块企业级项目的模块关系图: 这里有一个父模块,一个web应用,一个命令行应用,一个持久化模块,一个业务逻辑模块,一个模型对象模块。基本上, ...
当Maven项目很大,或者你运行诸如 mvn site 这样的命令的时候,maven运行需要很大的内存,在默认配置下,就可能遇到java的堆溢出。如: [INFO] Building jar: /home/dl9pf/svn/mindquarry/mindquarry-jcr/mindquarry-jcr-changes/target/mindquarry-migration-with-de ...
前面的文章我大概介绍了什么是Maven仓库管理器,以及仓库管理器的重要性。现在,介绍一下Sonatype推出的强大仓库管理器产品 —— Nexus。   简要罗列一下Nexus的特性: 代理远程仓库。配置Nexus代理中央仓库,其它任何公开的Maven仓库,将你组织内部的Maven配置指向Nexus,这样所有构件都将从Nexus下载,如果Nexus没有你要的构件,它会自动先去外部仓库下载到本地,仅一次。 本地宿主仓库。Nexus可以在服务器上建立本地的宿主仓库,你可以往这个仓库里提交任意的Maven规范构件,包括不能从公开仓库下载到的构件,或者你组织内部产生的构件。 仓库组。有了仓库组,你就能 ...
http://repo1.maven.org/maven2/ 是中央Maven仓库,里面包含了绝大多数的开源构件,及源码,作者信息,SCM信息,等等。每个月这里大概会接受全世界java程序员1亿次的点击,因此,它对全世界java开发者的贡献,是不言而喻的。   但如此大的访问量无疑存在潜在的危险,Maven中央仓库是开放的,任何人可以通过任何方式去那里下载资源,但它也有自己的承受能力,如果连接过多,则会瘫痪,这种情况,已经发生过很多次。   一个典型的反面教材是:一个公司或组织,有很多人使用Maven,项目会需要下载很多构件,但没有建立一个自己的仓库管理器,所有人都重复的从中央仓库下载构件(如果 ...
Maven的核心是它的生命周期,生命周期什么都不做,因此Maven的安装文件很小。所有的事情都交给了插件来完成。比如说,Maven的default生命周期中定义了一个compile阶段,这个定义本身什么都不会做,真正编译代码的是Compiler插件,它的groupId是org.apache.maven.plugins,artifactId是maven-compiler-plugin。   如果你理解设计模式中的模板方法(Template Method)模式,那么这会变得很好理解。在模板方法模式中,父类定义了一些抽象方法,并且决定这些方法的调用顺序,子类只需要实现这些方法。比如沏茶这个用例,父类定 ...
今天在maven主题的irc中得知,又一个中国的ip被中央Maven仓库 封了。原因我猜到了大半,但还是忍不住问一下,回答是: 他们消耗了很大的中央仓库带宽,会使之变慢。因此这些人不是良好的Maven公民。   我也曾经在个人笔记本上直接使用中央Maven仓库,第一次build项目下载了很多东西,可这样并没有被封,说明中央仓库不是很苛刻的,那么是什么样的下载量导致中央仓库的管理员受不了呢?我猜测是某个公司吧,很多人用Maven构建项目,但是自己没有建立一个仓库管理服务器,有太多的重复下载,直接导致占用了很大的带宽。   那么,请用Maven仓库管理器吧,为了别人,更为了自己。仓库管理器是干什 ...
美国加利福尼亚时间7月15日,Sonatype宣布 ,他们加盟了Eclipse基金会成为了战略开发商和董事会成员。以及作为企划与架构委员会成员,Sonatype承诺将会提供至少8个开发人员的全职时间以参与Eclipse技术的开发。 Eclipse基金会的执行 ...
你已经习惯了eclipse?你正在使用Maven?那么,你一定要试一下m2eclipse,它是如此的强大,如此的方便,由Maven之父领衔开发。先看一下它有哪些令人振奋的特性吧。   首先,是一些和项目创建导入相关的特性: 从SCM签出项目 利用 ...
Global site tag (gtag.js) - Google Analytics