本文仅从实践的角度分析Maven的用处及在日常工作要处理的问题。Maven是什么: 从实践及通俗的角度讲,Maven提供的核心功能是:Jar包管理。 你只需要配置好工程直接需要依赖的Jar包信息,Maven会自动找到间接依赖的Jar包。 artifact 是工程将要产生或需要使用的文件,它可以是jar文件,源文件,二进制文件,war文件,甚至是pom文件。每个artifact都由groupId和 artifactId组合的标识符唯一识别。需要被使用(依赖)的artifact都要放在仓库(见Repository)中,否则Maven无法找到 (识别)它们。
Maven及Maven仓库管理器Artifactory安装配置手册
传统开发回顾收集依赖构件到CLASS PATH编写源代码、配置信息JavaC编译单元测试产品打包、发行代码共享、储存,以及版本控制经常遇到哪些问题?严重依赖IDE?主要内容Maven介绍、安装、常用命令Eclipse下Maven项目开发坐标与依赖多模型开发常用插件和自动化部署内部仓库使用生成站点Maven高级主题Maven介绍Maven是一个项目管理工具,它包含了一项目对象模型(Project ObjectModel),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Manangement System),和用来运行定义在生命周期阶段中插件目标的逻辑。
CRM2.0部署自动构建过程文档整理文档说明:本文档为介绍CRM2.0部署自动构建过程(Hudson)。基本概念1、Hudson Hudson是一个可扩展的持续集成引擎。主要用于:1.持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。2.监控一些定时执行的任务。图1Hudson拥有的特性包括:易于安装-只要把hudson.war部署到servlet容器,不需要数据库支持。易于配置-所有配置都是通过其提供的web界面实现。集成RSS/E-mail/IM-通过RSS发布构建结果或当构建失败时通过e-mail实时通知。
可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令。当编译Linux内核及一些软件的源程序时,经常要用这个命令。Make命令其实就是一个项目管理工具,而Ant所实现功能与此类似。像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷。最初Ant开发者在开发跨平台的应用时,用样也是基于这些缺陷对Ant做了更好的设计。
1.更快、更简单 速度方面可以比上ant了2.更少的配置文件 现在的配置文件只剩下了settings.xml和pom.xml了。3. Plugin语言更换 语言开始支持java,BeanShell和ant.
Ant在构建过程方面十分优秀,它是一个基于任务和依赖的构建系统。每个任务包含一组由XML编码的指令。有copy任务和javac任务,以及jar任务。在你使用Ant的时候,你为Ant提供特定的指令以编译和打包你的输出Maven:提供了构建工具所提供功能超集。除了提供构建的功能,maven还可以生成报告,生成web站点,并且帮助推动工作团队成员间的交流,maven不仅仅是一个工具,它更是一个平台。如果你已经有十次输入同样的Anttargets来编译你的代码、jar或者war、生成javadocs,你一定会自问,是否有一种重性更少却能同样完成该工作的方法。Maven便提供了这样的一种选择,将你的注意力从作业层转移到项目管理层。Maven项目已经知道如何构建和捆绑代码,运行测试,生成文档并宿主项目网页。
Maven简介Maven是一个构建工具。Maven是一个项目管理工具。它包含了一个项目对象模型(Project Object Model POM),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型(POM)来描述你的项目。
通过持续集成控制代码质量 - Maven+Hudson+Sonar 持续反馈。持续编译。持续测试。持续整合。项目透明。团队共享。构建自动化何为持续集成?CI系统的基本结构。安装和配置简单。基于Java。纯WebUI操作。配置时帮助即时反馈。插件非常丰富为何我选Hudson?。
如果你想在Hudson的控制台,或者项目配置页面里赋予插件一些参数,或者在project或者build页面里现实点什么,那么你就需要写一个jelly脚本并将他放在resources文件夹里,并且包路径一一对应。 举个例子,如果你有个叫SayHello的类,位于com.somecompany.myapp包路径下,它需要使用一个config.jelly,以便于可以在项目的配置页面对其进行配置。那么这个jelly脚本在resources里的包应该是com.somecompany.myapp.SayHello,这样Hudson就会自动地调用它。
具体怎样使用deploy命令部署构件到nexus服务器上可以参考经典的《Maven Definitive Guide》(Maven操作指南),书中的16.7节里面讲解的非常详细。
Maven 是一项软件工程管理工具,它是基于一种工程对象模型的概念(POM),它可以管理一个工程的建造,和来自于信息中心的报道和文档,可以以网站的形式展现与项目相关的信息。Project:任何想要build的事务,maven都可以认为它们是工程。这些工程被定义为工程对象模型(POM,project object model)。一个工程可以依赖其他的工程,一个工程也可以有多个子工程。
Ant是什么?Ant是一个构建工具,它可以帮助我们将项目开发过程中需要完成的各种步骤组织起来,通过一个简易的方式来构建整个项目。Ant究竟能做什么呢?这取决于Ant的任务(Task),Ant有哪些任务,就能完成哪些工作!一些典型的任务是:编译java源代码、运行java程序、拷贝文件或目录、将编译完成的类打包等等。当然,Ant是一个开放的架构,任何人,都可以按照自己的方式,添加自己的任务(Task),这需要遵守Ant的一些规范
安装下载maven的3.0.4版本设置环境变量中的path本地仓库的安装1、修改maven目录下的conf中的setting.xml新建一个简单的项目主要创建文件pom.xml创建代码和测试代码源代码应该放置到src/main/java中源代码的资源文件应该放置在src/main/resources文件夹中测试代码应该放置到src/test/java中测试代码的资源文件应该放置在src/test/resources文件夹中
一、MAVEN介绍1、什么是Maven:Maven这个词可以翻译为“知识的积累”,是一种跨平台的项目管理工具。作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。2、Maven是优秀的构建工具:除了编写源代码,我们每天有相当一部分时间花在了编译、运行单元测试、生成文档、打包和部署等烦琐且不起眼的工作上,这就是构建。
Ant是Java平台下非常棒的批处理命令执行程序,能非常方便地自动完成编译,测试,打包,部署等等一系列任务,大大提高开发效率。如果你现在还没有开始使用Ant,那就要赶快开始学习使用,使自己的开发水平上一个新台阶。
这几年,持续集成随着敏捷在国内的推广而持续走热,与之相伴的持续部署也一直备受关注。自前两年,持续交付这个延续性概念又闯进了国内IT圈,慢慢开始在社区和会议中展露头角。许多不明真相的群众跟风哭着喊着要“上”,而许多前CI的半吊子玩家换件衣服就接着干,有的甚至衣服都来不及换……。国内的这些土财主如果不巧请了某些所谓的战略家,除了建了一堆持续集成环境,以及每天嚷嚷着要这个要那个,混乱的状况在根本上没有得到改善。本文无意费力探讨持续集成和持续交付的概念,而是打算谈谈对于大型软件企业,以持续集成为基础实现持续部署(交付)时,所要面对的问题以及可行的解决方案。
本国语言的Maven参考资料永远是受欢迎的,而现在Juven Xu(许晓斌)——一位活跃在开源社区的知名Maven专家正好有条件编写一本关于Maven的中文图书。他的新书《Maven实战》将带领你一步步从认识Maven开始走向更高级的现实世界中的真实项目应用。这本书的主要内容不仅包括Maven在Web领域的应用、使用Maven管理版本发布、以及如何编写自己的Maven插件,而且还涵盖了许多如何在企业环境中应用Maven的技术细节,例如Eclipse集成、Nexus仓库管理器以及用Hudson进行持续集成等。如果你是一个正在使用Maven的中国程序员,该书是必备的!
MAVEN项目管理工具简介
开源持续集成引擎(Continuous Integration Server) 前身为 Hudson,因商标版权问题更名为 Jenkins 开源,免费,易安装,配置简单 支持所有主流 SCM 工具(SVN、Git、CVS、Mercurial等) 众多的插件支持,高扩展性 支持并行构建、分布式构建、增量构建、SCM 触发构建等 IDE集成(Eclipse Plug-in)