Maven——工程化

命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

导读:本篇文章讲解 Maven——工程化,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

在这里插入图片描述

前言

     项目中很多工具用起来很方便却很少深究过它们的具体内容,今天和大家一起来复习整理一下再Java工程化中重要的一节:Maven;

概述

     项目中Maven有仓库管理、依赖管理等功能为项目的构建提供了完善的解决方案.那么Maven是如何做到这些的呢,下面让我们来了解一下仓库的概念.

仓库管理

     提起Maven想到最多的就是对jar包的管理,那么我们在项目中配置了pom.xml文件后,又该从哪里获取到这些jar包呢,地方就是所说的仓库。在Maven中仓库分为:本地仓库、第三方仓库(私服)、中央仓库.

本地仓库

     Maven会将工程中依赖的jar包从远程下载到本机一个目录下管理,每个电脑默认的仓库是在 $user.home/.m2/repository下,也可以通过Maven的Setting文件来配置本地仓库的地址.

第三方仓库

     第三方仓库,也称为私服一般是由公司自己设立的,只为本公司内部共享使用。使用私服为了减少对中央仓库的访问,所以私服可以使用局域网,但中央仓库必须使用外网.

中央仓库

     Maven内置了远程公用仓库:http://repo1.maven.org/maven2 这个公共仓库是由Maven自己维护,里面有大量的常用类库,并包含了世界上大部分流行的开源项目构件。目前是以java为主,工程依赖的jar包会先从本地仓库与私服中查找,如果没有就会从中央仓库下载.

依赖管理

	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-beans</artifactId>		
		<version>4.0</version>
		<scope>test</scope>
	</dependency>

     在使用pom.xml配置jar包时,groupId artifactId version scope 四个属性是一定要了解的 .

Scope

其中scope可以表示依赖范围有:编译时,运行时,测试时;
     compile: 默认值,如果选择此值,表示编译、测试和运行都使用当前jar.
     test: 表示只在测试时当前jar生效,在别的范围内就不能使用该jar包。
     runtime: 表示测试和运行时使用当前jar,编译时不用该jar包。
     provided: 表示编译和测试时使用当前jar,运行时不在使用该jar了。
在平时的使用中要是全部都以默认值为Scope的配置程序运行是没有问题,但是对于一个对程序负责的架构师来说注意jar包的依赖范围是很必要的.

小结

     想要了解Java工程化的内容还有很多的内容需要重新学习整理,我将在之后的篇幅中逐步为大家展开,荣幸与您分享~

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

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/144255.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!