Maven的多模块项目依赖管理-研发项目管理

>>Maven的多模块项目依赖管理-研发项目管理

Maven的多模块项目依赖管理-研发项目管理

引言:当今社会市场竞争激烈,软件开发企业想要占据前列需要在研发管理上下功夫,“向管理要效益”已经成为软件开发企业的共识,研发项目管理在软件企业中的普及也是大势所趋。国内做软件项目管理工具的开发商翼发云近几年发展十分迅速,越来越多的软件开发企业认识到研发项目管理的重要性,能切实有效降低成本,规范软件开发流程,提高软件产品质量。国内研发项目管理系统、敏捷开发管理工具的领导品牌翼发云敏捷项目管理系统采用可视化业务流程技术,支持瀑布模型等传统软件研发项目管理,同时也支持scrum等敏捷开发流程,是理想的敏捷开发管理工具,涵盖软件项目管理工作的整个生命周期。为提高国内软件开发企业的项目管理水平,分享一篇企业管理相关的知识文章。

行家多模块项目依赖管理和依赖和dependencymanagement

之间的差异

转:http://blog.csdn.net/liutengteng130/article/details/46991829 scrum

1,depencymanagement应用场景

当我们的项目模块很多,我们使用Maven管理项目是非常方便的,帮助我们管理建设、文档、报告、依赖、SCMs的方式,发布和分发。编译代码、管理依赖项、管理二进制库等是很方便的。

因为我们的很多模块,我们抽象层提取过于基母管理子项目的公共关系。对于该项目的正确操作,所有项目必须使用统一版本的所有依赖项。我们必须确保所有应用程序的依赖项和版本是一致的,以确保发布测试和发布相同的结果。软件项目管理

在POM文件在我们的项目上,我们会看到dependencymanagement元素。利用其元素管理的jar包的版本,让项目指上市的版本号,依赖它不显示它。Maven将沿着父亲的孩子的水平直到找到一个项目dependencymanagement元素,然后将它用在这dependencymanagement元素指定的版本号。

敏捷开发流程

看在我们的项目中的应用:

及;POM继承图:研发项目管理

Maven多模块项目依赖管理

;依赖:

太基母(POM。XML)

[ ]查看java平原复制打印?< dependencyManagement> < dependencies> < dependency> nbsp; < groupId> org.eclipse.persistence< /groupId> nbsp; < artifactId> org.eclipse.persistence.jpa< /artifactId> &nbsp ;<version>${org.eclipse.persistence.jpa.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax</groupId> & Nbsp; < artifactId> javaee-api< /artifactId> < version> ${javaee-api.version}< /version> < /dependency> nbsp; < /dependencies> < /dependencyManagement>

我自己也在基地(POM。XML)

[ ]查看java平原复制打印?和LT;!– inherited from the parent class –> < parent> < artifactId> itoo-base-parent< /artifactId> < groupId> com.tgb< /groupId> < version> 0.0.1-SNAPSHOT< /version> < relativePath>../itoo-base-parent/pom.xml< /relativePath> < nbsp; /parent> < modelVersion> 4.0.0< /modelversion &gt;&nbs p;&lt;artifactId &gt;过于基地& lt;/ artifactId &gt;&lt;包装& gt;EJB & lt;/包装&gt;& lt;!–依赖关系–> <dependencies> <dependency> <groupId>javax</groupId> <artifactId>javaee-api</a rtifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> </dependency> <dependency> < groupId> org.eclipse.persistence< /groupId> < artifactId> org.eclipse.persistence.jpa< /artifactId> &nbsp·(五);;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(二)这样做的好处:统一管理项目版本,确保所有项目的应用和同一版本的依赖性,以确保测试和发布相同的结果,因此,在顶部POM的共同依赖的定义。同时可以避免在每个子项目中声明版本号,所以要升级或切换到另一个版本,只需要更新父类的容器,不需要对项目进行任何修改;如果一个项目需要另一个版本,只需要声明一个版本号可以是依赖项。子类使用子类声明的版本号,并且不继承父版本号。

2,依赖

&nbsp,dependencymanagement相比,在生活的所有依赖关系会自动介绍,它将被默认的所有子项的继承。

3,差异

即使子程序不写依赖,子项目将从父项目继承依赖。

dependencymanagement只声明依赖,不引进,所以子项目需要显示声明依赖。如果不在依赖项目的声明,是不是从父项目继承;只有在子项目写这种依赖,不指定一个特定的版本,将项目从父亲继承,和版本和范围是从父POM读;如果在子项目并指定版本号,使用指定的版本的jar项目。

还需要注意的是,项目变量是指版本的应用程序。

&nbsp,在顶层的POM是不同于dependencymanagement的dependencymanagement元。

在dependencymanagement依赖元素只表示依赖版本的偏好,不影响项目的依赖,而依赖因素影响项目的依赖关系。4、

Maven约定优于配置

为不提供不必要的配置提供了一个合理的默认行为。设置默认目录

Src ;;;; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”

Main ; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “

java ;“;”;“;”;“;”;“;”;“;”;“;”;“;“;”;“;”;“;”

资源项目资源文件

Test ; E;;;;;; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”; “;”

java ;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“;”;“测试”的代码。

资源档案,用于测试的资源。

目标编译的类文件的JAR文件,

Maven约定优于配置的理解,另一方面,小项目基本上满足我们的需求,基本上不需要配置自己的东西,Maven的使用已经配置好,学习速度快,成本减少;另一方面,为了满足我们的需要也可以自定义设置,体现了灵活性。在配置上有很多的减少,并且项目变得越复杂,优势就越明显。

文章从互联网整理而来,旨在传播scrum、软件项目管理、研发项目管理、敏捷开发管理工具的知识与应用,帮助软件开发企业真正了解研发项目管理的价值和意义,如果本文侵犯了您的权益或者您需要具体了解更多国内做研发项目管理系统的公司翼发云敏捷项目管理系统的相关信息,欢迎和我们联络:

【网址】www.effapp.com

2018-02-24T17:01:54+08:002018-02-24 17:01:54|Categories: scrum项目管理|