项目管理工具maven,使用起来真香(maven是项目管理工具)

今天是刘小爱自学Java的第99天。

感谢你的观看,谢谢你。

话不多说,开始今天的学习:

项目管理工具maven,使用起来真香(maven是项目管理工具)

昨天下载并配置了Maven,今天就实际操作下。

Maven的一个核心作用就是管理项目的依赖,这个依赖就可以理解成jar包。

有了它就不用再去网上一个一个找jar包了,直接添加jar包的坐标就好。

那么其具体如何导入呢?

一、依赖管理

在maven工程中,有一个核心配置文件pom.xml,在该配置文件中即可以引入依赖。

1本地仓库引入

项目管理工具maven,使用起来真香(maven是项目管理工具)

<dependencies>标签就好比以前的lib包,<dependencie>标签也就对应着jar包。

其中关于标签名:

  • groupId:定义当前项目(jar包)隶属的实际项目组。
  • artifactId:定义当前项目(jar包)的名称。
  • version:定义当前项目(jar包)的版本号。

正是因为有了version这个标签的存在,通过该标签统一版本起来也方便了很多。

因为这两种依赖很常见,我本地仓库中已经有了,所以导入依赖时根据提示就可以导入。

此外在开发工具中也可以直接搜索依赖:

项目管理工具maven,使用起来真香(maven是项目管理工具)

使用快捷键:Alt Insert,可以搜索对应的依赖,点击即可以引入依赖。

不过上述这两种情况,都是本地仓库中存在对应的依赖才能够被搜索到。

如果本地仓库没有,就需要使用到私服了。

2私服引入

昨天在配置文件夹中就配置过对应的私服。

使用的是阿里云私服,将其路径复制下来访问,可以访问到如下界面:

项目管理工具maven,使用起来真香(maven是项目管理工具)

通过文件搜索功能可以搜索到需要的依赖,比如我这边搜索的是druid。

找到对应的jar包点击,可以下载对应的jar包,但是如果是使用maven,不用下载。

将依赖复制后在项目中引入即可。

在引入依赖后开发工具右下角会出现如下提示:

项目管理工具maven,使用起来真香(maven是项目管理工具)

点击import Changes就完成依赖的引入了。

同时也会将该依赖下载到本地仓库中。

二、依赖配置

在引入需要使用的依赖后,有时候不能直接就使用当前的依赖,需要对这些依赖进行配置。

1依赖范围设置

maven的运行环境有三种:编译classpath,测试classpath,运行classpath。

而依赖范围设置就是用来控制依赖与这三种classpath之间的关系的。

其中依赖范围都是在标签<scope>中配置:

项目管理工具maven,使用起来真香(maven是项目管理工具)

①编译依赖范围compile

如果没有指定,默认就是这种依赖范围。

使用此依赖范围的Maven依赖,对于编译、测试、运行三种classpath都有效。

典型的例子就是jdbcTemplate,它在编译、测试和运行代码时都需要。

②测试依赖范围test

使用此依赖范围的Maven依赖,只对测试classpath有效。

在编译和运行项目期间都不需要使用此依赖。

典型的例子就是Junit,它只在测试代码时有效。

项目管理工具maven,使用起来真香(maven是项目管理工具)

③已提供依赖范围:provided

使用此依赖范围的maven依赖在编译和测试classpath有效,但运行时无效。

典型的例子就是servlet-api。

编译和测试的时候需要使用servlet-api中的方法,但是使用tomcat运行项目的时候不需要。

我们查看下Tomcat的文件路径,会发现其本身就自带了该jar包。

所以Tomcat在运行期间会自动提供这个依赖。

如果我们引入的该依赖在运行时也有效,一旦和Tomcat自带的版本不一样,就会出现冲突。

项目管理工具maven,使用起来真香(maven是项目管理工具)

④运行时依赖范围:runtime

使用此依赖范围的maven依赖对于测试和运行classpath有效,但在编译时无效。

典型的例子是JDBC驱动实现。

项目中只有在执行测试或者运行项目的时候才需要该依赖。

⑤系统依赖范围:system

该依赖和provided依赖范围完全一致。

但是此依赖不是来自Maven的中央仓库。

使用system范围的依赖时必须通过<systemPath>标签指定依赖文件的路径。

典型的例子是Oracle的驱动包。

该依赖从中央仓库无法下载,需要先将Oracle的驱动包下载到本地,再通过本地路径引入。

该依赖范围了解即可,使用不常见。

注意:

上述编译都是指对项目主代码的编译,不包含对于测试代码的编译。

2依赖版本维护

事实上,在一个项目中,需要引入的依赖是很多的,可能有几十个。

而各个依赖又有不同的版本,为了统一维护版本,可以专门将依赖的版本抽取出来统一管理:

项目管理工具maven,使用起来真香(maven是项目管理工具)

在<properties>标签中放入各个依赖的版本号。

版本标签命名格式为依赖名.version。

在对应的依赖<version>中使用${}引入前面定义好的版本即可。

最后

谢谢你的观看。

如果可以的话,麻烦帮忙点个赞,谢谢你。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年9月17日 上午9:41
下一篇 2022年9月17日 上午9:43

相关推荐

  • 端午假期建设不停歇 中建海峡厦门公司各项目部稳抓进度促履约(中建海峡建设发展有限公司厦门公司)

    来源:人民网-福建频道 原创稿 端午佳节期间,中建海峡厦门公司的多个项目部以工程建设进度为重,结合实际情况合理优化工期,以时间最短、质量最优为目的,加快项目建设进度,为厦门建设“两…

    2022年6月25日
    282
  • pms项目管理系统

    项目管理系统是一种用于管理项目的工具,可以帮助项目经理更好地组织、协调和控制项目进度、成本和质量。随着现代软件开发和项目管理的日益复杂,使用项目管理系统已经成为一种必要的技能。在本…

    科研百科 2024年5月23日
    101
  • 员工轮岗制度(完整版)(员工轮岗管理制度)

    在企业管理中,很多企业都注重企业员工的轮岗,轮岗又叫做职务轮换,是旨在让员工或者核心管理层能适应或掌握更多部门内容而专设的一种企业管理制度。轮岗制度不仅在人才储备上实现自我培养与管…

    科研百科 2022年11月14日
    286
  • 项目管理思考

    项目管理思考 在项目管理中,思考是非常重要的。项目管理不仅仅是一项任务或活动,它更是一个团队合作的过程。因此,在项目管理中,我们需要思考如何协调团队中的不同角色,如何分配任务,如何…

    科研百科 2024年8月17日
    37
  • 经验交流:聚力卓越党建,建设现代国企(卓越党建+现代国企实践中心)

    【经验交流】 聚力卓越党建 建设现代国企 文/蔡任杰 江苏交控举办“书记精品党课”比赛 江苏交通控股有限公司党委以习近平新时代中国特色社会主义思想为指引,全面践行新时代党的建设总要…

    科研百科 2023年1月18日
    546
  • 会展大学生科研项目

    会展大学生科研项目 在会展行业中,大学生科研项目是一个非常重要的组成部分。作为学生,他们可以通过参与科研项目,锻炼自己的研究能力和创新思维,同时也可以为会展行业做出贡献。本文将介绍…

    科研百科 2025年4月22日
    1
  • 协同办公管理系统(学校 协同办公)

    学校协同办公:提高教育质量的利器 随着信息技术的不断发展,学校协同办公已经成为提高教育质量的重要手段之一。在学校内部,教师和学生可以通过网络技术进行实时沟通和协作,共同完成教学任务…

    科研百科 2024年6月3日
    70
  • 科研项目质量进度措施

    科研项目质量进度措施 科研项目的质量进度是任何科研项目成功的关键。为了确保项目的成功,需要采取一系列措施来确保项目的质量进度。这些措施包括: 1. 制定详细的项目计划和时间表。项目…

    科研百科 2025年3月14日
    1
  • 项目进度管理 excel

    项目进度管理是项目管理中非常重要的一部分,它有助于确保项目按时完成,并符合项目目标。在项目进度管理中,使用Excel是一个非常有用的工具,因为它可以帮助管理人员对项目进度进行实时监…

    科研百科 2024年9月4日
    31
  • 论信息系统项目的范围管理(论信息系统项目的范围管理论文)

    2019年8月,我参与了某市信息化项目管理平台项目的建设。由于本人具有较丰富的项目管理经验,因此有幸被指定为该项目的项目经理。该项目投资500万元,项目周期为1年,通过该项目的建设…

    科研百科 2022年7月18日
    196